+
+void Literal::visit(NodeVisitor &visitor)
+{
+ visitor.visit(*this);
+}
+
+
+void ParenthesizedExpression::visit(NodeVisitor &visitor)
+{
+ visitor.visit(*this);
+}
+
+
+void VariableReference::visit(NodeVisitor &visitor)
+{
+ visitor.visit(*this);
+}
+
+
+void MemberAccess::visit(NodeVisitor &visitor)
+{
+ visitor.visit(*this);
+}
+
+
+UnaryExpression::UnaryExpression():
+ prefix(true)
+{ }
+
+void UnaryExpression::visit(NodeVisitor &visitor)
+{
+ visitor.visit(*this);
+}
+
+
+BinaryExpression::BinaryExpression():
+ assignment(false)
+{ }
+
+void BinaryExpression::visit(NodeVisitor &visitor)
+{
+ visitor.visit(*this);
+}
+
+
+FunctionCall::FunctionCall():
+ constructor(false)
+{ }
+
+void FunctionCall::visit(NodeVisitor &visitor)