public void VisitUnaryExpression(UnaryExpressionAstNode node) { switch (node.Terminal) { case Increment: VisitIncrementExpression(node); break; case Decrement: VisitDecrementExpression(node); break; case Sizeof: VisitSizeofExpression(node); break; case Ampersand: VisitAddressOfExpression(node); break; case Star: VisitPointerDereferenceExpression(node); break; case Plus: VisitPlusExpression(node); break; case Minus: VisitMinusExpression(node); break; case Tilde: VisitComplementExpression(node); break; case Bang: VisitNegationExpression(node); break; default: throw new NotImplementedException(System.Enum.GetName(typeof(Terminal), node.Terminal)); } }
public abstract void VisitIncrementExpression(UnaryExpressionAstNode node);
public abstract void VisitSizeofExpression(UnaryExpressionAstNode node);
public abstract void VisitAddressOfExpression(UnaryExpressionAstNode node);
public abstract void VisitPointerDereferenceExpression(UnaryExpressionAstNode node);
public abstract void VisitPlusExpression(UnaryExpressionAstNode node);
public abstract void VisitNegationExpression(UnaryExpressionAstNode node);
public override void VisitDecrementExpression(UnaryExpressionAstNode node) { }
public override void VisitSizeofExpression(UnaryExpressionAstNode node) { }
public override void VisitPointerDereferenceExpression(UnaryExpressionAstNode node) { }
public override void VisitPlusExpression(UnaryExpressionAstNode node) { }
public override void VisitNegationExpression(UnaryExpressionAstNode node) { }
public override void VisitAddressOfExpression(UnaryExpressionAstNode node) { }