Skip to content

Instantly share code, notes, and snippets.

@NaelsonDouglas
Created November 6, 2018 07:49
Show Gist options
  • Save NaelsonDouglas/8e5fcac8af7553adf4a3b56bb645aba6 to your computer and use it in GitHub Desktop.
Save NaelsonDouglas/8e5fcac8af7553adf4a3b56bb645aba6 to your computer and use it in GitHub Desktop.
$ return break continue opr_atr id idt_int c_c_brckt o_c_brckt c_brckt comma o_brckt blk_for blk_while blk_els blk_if ct_true ct_false oprlr_lgeq oprlr_and oprlr_or oprl_not ct_int ct_float opr_dm opr_pm ct_string vec_in idt_char idt_bool idt_float idt_string idt_void const
S S → eps S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S S → RETYPE id PARAM o_c_brckt ALL_INTER c_c_brckt S
TYPE TYPE → CONST_R TP TYPE → CONST_R TP TYPE → CONST_R TP TYPE → CONST_R TP TYPE → CONST_R TP TYPE → CONST_R TP
CONST_R CONST_R → eps CONST_R → eps CONST_R → eps CONST_R → eps CONST_R → eps CONST_R → const
TP TP → idt_int TP → idt_char TP → idt_bool TP → idt_float TP → idt_string
RETYPE RETYPE → TYPE RETYPE → TYPE RETYPE → TYPE RETYPE → TYPE RETYPE → TYPE RETYPE → idt_void RETYPE → TYPE
PARAM PARAM → o_brckt PRH
PRH PRH → PR c_brckt PRH → c_brckt PRH → PR c_brckt PRH → PR c_brckt PRH → PR c_brckt PRH → PR c_brckt PRH → PR c_brckt
PR PR → TYPE IDVEC PRL PR → TYPE IDVEC PRL PR → TYPE IDVEC PRL PR → TYPE IDVEC PRL PR → TYPE IDVEC PRL PR → TYPE IDVEC PRL
PRL PRL → eps PRL → comma PR
ATTR ATTR → idt_int IDVEC opr_atr EXPR_NUM ATTR → idt_char IDVEC opr_atr EXPR_NUM ATTR → idt_bool IDVEC opr_atr EXPR_BOOL ATTR → idt_float IDVEC opr_atr EXPR_NUM ATTR → idt_string IDVEC opr_atr EXPR_STRING
IDVEC IDVEC → id IDT
IDT IDT → eps IDT → eps IDT → eps IDT → vec_in EXPR_NUM
EXPR_STRING EXPR_STRING → ESH opr_pm EXPR_STRING EXPR_STRING → ESH opr_pm EXPR_STRING EXPR_STRING → ESH opr_pm EXPR_STRING
ESH ESH → id ESH → o_brckt EXPR_STRING c_brckt ESH → ct_string
EXPR_NUM EXPR_NUM → K KR EXPR_NUM → K KR EXPR_NUM → K KR
KR KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → eps KR → opr_pm EXPR_NUM KR → eps KR → eps KR → eps KR → eps
K K → G KH K → G KH K → G KH
KH KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → eps KH → opr_dm G KH KH → eps KH → eps KH → eps KH → eps KH → eps
G G → o_brckt EXPR_NUM c_brckt G → ct_int G → ct_float
EXPR_BOOL EXPR_BOOL → T EXPR_BOOLH EXPR_BOOL → T EXPR_BOOLH EXPR_BOOL → T EXPR_BOOLH EXPR_BOOL → oprl_not T EXPR_BOOLH EXPR_BOOL → T EXPR_BOOLH EXPR_BOOL → T EXPR_BOOLH
EXPR_BOOLH EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → oprlr_or T EXPR_BOOLH EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps EXPR_BOOLH → eps
T T → F TH T → F TH T → F TH T → F TH T → F TH
TH TH → eps TH → eps TH → eps TH → eps TH → eps TH → eps TH → eps TH → eps TH → eps TH → oprlr_and F TH TH → eps TH → eps TH → eps TH → eps TH → eps
F F → o_brckt EXPR_BOOL c_brckt F → EXPR_NUM oprlr_lgeq EXPR_NUM F → ct_true F → ct_false F → EXPR_NUM oprlr_lgeq EXPR_NUM F → EXPR_NUM oprlr_lgeq EXPR_NUM
ALL_INTER ALL_INTER → RCONT ALL_INTER ALL_INTER → RCONT ALL_INTER ALL_INTER → RCONT ALL_INTER ALL_INTER → ATTR ALL_INTER ALL_INTER → RFOR ALL_INTER ALL_INTER → RWHILE ALL_INTER ALL_INTER → RIF ALL_INTER ALL_INTER → ATTR ALL_INTER ALL_INTER → ATTR ALL_INTER ALL_INTER → ATTR ALL_INTER ALL_INTER → ATTR ALL_INTER
RIF RIF → blk_if o_brckt EXPR_BOOL c_brckt o_c_brckt ALL_INTER c_c_brckt RIF1
RIF1 RIF1 → eps RIF1 → eps RIF1 → eps RIF1 → eps RIF1 → eps RIF1 → eps RIF1 → blk_els RIF1 RIF1 → blk_els o_c_brckt ALL_INTER c_c_brckt RIF1 → eps RIF1 → eps RIF1 → eps RIF1 → eps RIF1 → eps
RWHILE RWHILE → blk_while o_brckt EXPR_BOOL o_brckt o_c_brckt ALL_INTER c_c_brckt
RFOR RFOR → blk_for o_brckt ATTR_I comma EXPR_NUM comma EXPR_NUM c_brckt o_c_brckt ALL_INTER c_c_brckt
ATTR_I ATTR_I → id ATTR_IH ATTR_I → idt_int id opr_atr EXPR_NUM
ATTR_IH ATTR_IH → opr_atr EXPR_NUM ATTR_IH → eps
RCONT RCONT → return RH RCONT → break RCONT → continue
RH RH → eps RH → eps RH → eps RH → eps RH → EXPR_NUM RH → eps RH → eps RH → eps RH → EXPR_NUM RH → EXPR_NUM RH → eps RH → eps RH → eps RH → eps
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment