Chris@0: Function calls Chris@0: ----- Chris@0: b['c'](); Chris@0: Chris@0: // array dereferencing Chris@0: a()['b']; Chris@0: ----- Chris@0: array( Chris@0: 0: Expr_FuncCall( Chris@0: name: Name( Chris@0: parts: array( Chris@0: 0: a Chris@0: ) Chris@0: comments: array( Chris@0: 0: // function name variations Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: comments: array( Chris@0: 0: // function name variations Chris@0: ) Chris@0: ) Chris@0: 1: Expr_FuncCall( Chris@0: name: Expr_Variable( Chris@0: name: a Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 2: Expr_FuncCall( Chris@0: name: Expr_Variable( Chris@0: name: Scalar_String( Chris@0: value: a Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 3: Expr_FuncCall( Chris@0: name: Expr_Variable( Chris@0: name: Expr_Variable( Chris@0: name: a Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 4: Expr_FuncCall( Chris@0: name: Expr_Variable( Chris@0: name: Expr_Variable( Chris@0: name: Expr_Variable( Chris@0: name: a Chris@0: ) Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 5: Expr_FuncCall( Chris@0: name: Expr_ArrayDimFetch( Chris@0: var: Expr_Variable( Chris@0: name: a Chris@0: ) Chris@0: dim: Scalar_String( Chris@0: value: b Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 6: Expr_FuncCall( Chris@0: name: Expr_ArrayDimFetch( Chris@0: var: Expr_Variable( Chris@0: name: a Chris@0: ) Chris@0: dim: Scalar_String( Chris@0: value: b Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 7: Expr_FuncCall( Chris@0: name: Expr_ArrayDimFetch( Chris@0: var: Expr_PropertyFetch( Chris@0: var: Expr_Variable( Chris@0: name: a Chris@0: ) Chris@0: name: b Chris@0: ) Chris@0: dim: Scalar_String( Chris@0: value: c Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: ) Chris@0: 8: Expr_ArrayDimFetch( Chris@0: var: Expr_FuncCall( Chris@0: name: Name( Chris@0: parts: array( Chris@0: 0: a Chris@0: ) Chris@0: comments: array( Chris@0: 0: // array dereferencing Chris@0: ) Chris@0: ) Chris@0: args: array( Chris@0: ) Chris@0: comments: array( Chris@0: 0: // array dereferencing Chris@0: ) Chris@0: ) Chris@0: dim: Scalar_String( Chris@0: value: b Chris@0: ) Chris@0: comments: array( Chris@0: 0: // array dereferencing Chris@0: ) Chris@0: ) Chris@0: )