public override SyntaxNode VisitGotoStatement(GotoStatementSyntax node) { var label = node.Expression.ToString(); if (label.StartsWith("$")) { return(node); } return(StateGenerator.ChangeState(labelStates[label])); }
public State(StateGenerator generator, bool isFakeState = false) { Statements = new List <StatementSyntax>(); if (!isFakeState) { Index = generator.states.Count; generator.states.Add(this); } else { Index = -1; } }