diff --git a/version1.0/nasal_parser.h b/version1.0/nasal_parser.h index c7ff7d1..9b24d5e 100644 --- a/version1.0/nasal_parser.h +++ b/version1.0/nasal_parser.h @@ -176,6 +176,37 @@ void nasal_parser::definition_expr() } void nasal_parser::assignment_expr() { + get_token(); + if(this_token.type!=__equal && this_token.type!=__add_equal + && this_token.type!=__sub_equal && this_token.type!=__mul_equal + && this_token.type!=__div_equal && this_token.type!=__link_equal) + { + parse.push(this_token); + return; + } + get_token(); + switch(this_token.type) + { + case __id:identifier_begin_expr();break; + case __number:number_begin_expr();break; + case __string:string_begin_expr();break; + case __left_brace:hash_init_generator();break; + case __left_bracket:list_init_generator();break; + case __func:function_expr();break; + default: + ++error; + std::cout<<">>[Error] line "<>[Error] line "<