std::map<Block *, BlockDeclarationMap> declarations;
std::map<std::string, InterfaceBlock *> interface_blocks;
+ std::map<std::string, FunctionDeclaration *> overloaded_functions;
bool anonymous_block;
public:
virtual void visit(VariableReference &);
virtual void visit(MemberAccess &);
virtual void visit(InterfaceBlockReference &);
+ virtual void visit(FunctionCall &);
virtual void visit(VariableDeclaration &);
virtual void visit(InterfaceBlock &);
virtual void visit(FunctionDeclaration &);
virtual void visit(UnaryExpression &);
virtual void visit(BinaryExpression &);
virtual void visit(Assignment &);
+ virtual void visit(TernaryExpression &);
virtual void visit(VariableDeclaration &);
};