8 #include "GDCore/Events/Parsers/ExpressionParser2Node.h"
9 #include "GDCore/Events/Parsers/ExpressionParser2NodeWorker.h"
23 node.Visit(typeFinder);
24 return typeFinder.variableName;
31 : variableName(
"") {};
36 void OnVisitNumberNode(
NumberNode& node)
override {}
37 void OnVisitTextNode(
TextNode& node)
override {}
39 variableName = node.name;
45 void OnVisitEmptyNode(
EmptyNode& node)
override {}
47 void OnVisitVariableBracketAccessorNode(
The interface for any worker class ("visitor" pattern) that want to interact with the nodes of a pars...
Definition: ExpressionParser2NodeWorker.h:36
Find the variable name from a variable expression.
Definition: ExpressionVariableNameFinder.h:18
String represents an UTF8 encoded string.
Definition: String.h:33
Definition: CommonTools.h:24
An empty node, used when parsing failed/a syntax error was encountered and any other node could not m...
Definition: ExpressionParser2Node.h:424
The base node, from which all nodes in the tree of an expression inherits from.
Definition: ExpressionParser2Node.h:101
A function call node (either free function, object function or object behavior function)....
Definition: ExpressionParser2Node.h:372
An identifier node, usually representing an object or a variable with an optional function name or ch...
Definition: ExpressionParser2Node.h:205
gd::String identifierName
The object or variable name.
Definition: ExpressionParser2Node.h:220
A number node. For example: "123". Its type is always "number".
Definition: ExpressionParser2Node.h:162
The name of a function to call on an object or the behavior For example: "MyObject....
Definition: ExpressionParser2Node.h:322
An operator node. For example: "lhs + rhs".
Definition: ExpressionParser2Node.h:130
Definition: ExpressionParser2Node.h:116
A text node. For example: "Hello World". Its type is always "string".
Definition: ExpressionParser2Node.h:178
A unary operator node. For example: "-2".
Definition: ExpressionParser2Node.h:146
A direct accessor to a child variable. Example: MyChild in MyVariable.MyChild.
Definition: ExpressionParser2Node.h:283
A bracket accessor to a child variable. Example: ["MyChild"] (in MyVariable["MyChild"]).
Definition: ExpressionParser2Node.h:301
A variable, or object variable, with bracket accessor or at least 2 "dot" accessors.
Definition: ExpressionParser2Node.h:262