diff options
author | Li Jin <dragon-fly@qq.com> | 2019-10-06 17:30:11 +0800 |
---|---|---|
committer | Li Jin <dragon-fly@qq.com> | 2019-10-06 17:30:11 +0800 |
commit | 055fcb596781a8488afeb0030e9ef4295e3d7017 (patch) | |
tree | 0512d6d9660e563be37af5b6ac1bb888a9023e6a /MoonParser/moon_ast.h | |
parent | 2de63a85a87c9a64032602fdd3736f69e73efbc5 (diff) | |
download | yuescript-055fcb596781a8488afeb0030e9ef4295e3d7017.tar.gz yuescript-055fcb596781a8488afeb0030e9ef4295e3d7017.tar.bz2 yuescript-055fcb596781a8488afeb0030e9ef4295e3d7017.zip |
updating
Diffstat (limited to 'MoonParser/moon_ast.h')
-rw-r--r-- | MoonParser/moon_ast.h | 42 |
1 files changed, 26 insertions, 16 deletions
diff --git a/MoonParser/moon_ast.h b/MoonParser/moon_ast.h index 1e5d733..d4ade53 100644 --- a/MoonParser/moon_ast.h +++ b/MoonParser/moon_ast.h | |||
@@ -245,10 +245,8 @@ AST_END(Update) | |||
245 | AST_LEAF(BinaryOperator, "BinaryOperator"_id) | 245 | AST_LEAF(BinaryOperator, "BinaryOperator"_id) |
246 | AST_END(BinaryOperator) | 246 | AST_END(BinaryOperator) |
247 | 247 | ||
248 | class Chain_t; | ||
249 | |||
250 | AST_NODE(Assignable, "Assignable"_id) | 248 | AST_NODE(Assignable, "Assignable"_id) |
251 | ast_ptr<ast_node> item; // Chain_t | Variable_t | SelfName_t | 249 | ast_ptr<ast_node> item; // AssignableChain_t | Variable_t | SelfName_t |
252 | AST_END(Assignable) | 250 | AST_END(Assignable) |
253 | 251 | ||
254 | class Value_t; | 252 | class Value_t; |
@@ -267,13 +265,6 @@ AST_NODE(Callable, "Callable"_id) | |||
267 | ast_ptr<ast_node> item; // Variable_t | SelfName_t | VarArg_t | Parens_t | 265 | ast_ptr<ast_node> item; // Variable_t | SelfName_t | VarArg_t | Parens_t |
268 | AST_END(Callable) | 266 | AST_END(Callable) |
269 | 267 | ||
270 | class InvokeArgs_t; | ||
271 | |||
272 | AST_NODE(ChainValue, "ChainValue"_id) | ||
273 | ast_ptr<ast_node> caller; // Chain_t | Callable_t | ||
274 | ast_ptr<InvokeArgs_t, true> arguments; | ||
275 | AST_END(ChainValue) | ||
276 | |||
277 | AST_NODE(variable_pair, "variable_pair"_id) | 268 | AST_NODE(variable_pair, "variable_pair"_id) |
278 | ast_ptr<Variable_t> name; | 269 | ast_ptr<Variable_t> name; |
279 | AST_END(variable_pair) | 270 | AST_END(variable_pair) |
@@ -299,7 +290,19 @@ AST_NODE(SimpleValue, "SimpleValue"_id) | |||
299 | */ | 290 | */ |
300 | AST_END(SimpleValue) | 291 | AST_END(SimpleValue) |
301 | 292 | ||
302 | AST_LEAF(LuaString, "LuaString"_id) | 293 | AST_LEAF(LuaStringOpen, "LuaStringOpen"_id) |
294 | AST_END(LuaStringOpen) | ||
295 | |||
296 | AST_LEAF(LuaStringContent, "LuaStringContent"_id) | ||
297 | AST_END(LuaStringContent) | ||
298 | |||
299 | AST_LEAF(LuaStringClose, "LuaStringClose"_id) | ||
300 | AST_END(LuaStringClose) | ||
301 | |||
302 | AST_NODE(LuaString, "LuaString"_id) | ||
303 | ast_ptr<LuaStringOpen_t> open; | ||
304 | ast_ptr<LuaStringContent_t> content; | ||
305 | ast_ptr<LuaStringClose_t> close; | ||
303 | AST_END(LuaString) | 306 | AST_END(LuaString) |
304 | 307 | ||
305 | AST_LEAF(SingleString, "SingleString"_id) | 308 | AST_LEAF(SingleString, "SingleString"_id) |
@@ -345,10 +348,17 @@ AST_NODE(Invoke, "Invoke"_id) | |||
345 | ast_sel_list<Exp_t, SingleString_t, DoubleString_t, LuaString_t> args; | 348 | ast_sel_list<Exp_t, SingleString_t, DoubleString_t, LuaString_t> args; |
346 | AST_END(Invoke) | 349 | AST_END(Invoke) |
347 | 350 | ||
348 | AST_NODE(Chain, "Chain"_id) | 351 | class InvokeArgs_t; |
352 | |||
353 | AST_NODE(ChainValue, "ChainValue"_id) | ||
354 | ast_ptr<Seperator_t> sep; | ||
355 | ast_sel_list<Callable_t, Invoke_t, DotChainItem_t, ColonChainItem_t, Slice_t, Exp_t, String_t, InvokeArgs_t> items; | ||
356 | AST_END(ChainValue) | ||
357 | |||
358 | AST_NODE(AssignableChain, "AssignableChain"_id) | ||
349 | ast_ptr<Seperator_t> sep; | 359 | ast_ptr<Seperator_t> sep; |
350 | ast_sel_list<Callable_t, Invoke_t, DotChainItem_t, ColonChainItem_t, Slice_t, Exp_t> items; | 360 | ast_sel_list<Callable_t, Invoke_t, DotChainItem_t, ColonChainItem_t, Exp_t, String_t> items; |
351 | AST_END(Chain) | 361 | AST_END(AssignableChain) |
352 | 362 | ||
353 | AST_NODE(Value, "Value"_id) | 363 | AST_NODE(Value, "Value"_id) |
354 | ast_ptr<ast_node> item; // SimpleValue_t | simple_table_t | ChainValue_t | String_t | 364 | ast_ptr<ast_node> item; // SimpleValue_t | simple_table_t | ChainValue_t | String_t |
@@ -486,6 +496,6 @@ AST_NODE(Block, "Block"_id) | |||
486 | ast_list<Statement_t> statements; | 496 | ast_list<Statement_t> statements; |
487 | AST_END(Block) | 497 | AST_END(Block) |
488 | 498 | ||
489 | AST_NODE(BlockEnd, "BlockEnd"_id) | 499 | AST_NODE(File, "File"_id) |
490 | ast_ptr<Block_t> block; | 500 | ast_ptr<Block_t> block; |
491 | AST_END(BlockEnd) | 501 | AST_END(File) |