public T Visit(IASTNode node) { return(node switch { ASTType n => VisitASTType(n), ASTTypeField n => VisitASTTypeField(n), ASTTypeDefinition n => VisitASTTypeDefinition(n), ASTRestriction n => VisitASTRestriction(n), ASTAlias n => VisitASTAlias(n), ASTData n => VisitASTData(n), ASTAnnotation n => VisitASTAnnotation(n), ASTDirective n => VisitASTDirective(n), ASTChoice n => VisitASTChoice(n), ASTOption n => VisitASTOption(n), ASTChapter n => VisitASTChapter(n), ASTParagraph n => VisitASTParagraph(n), _ => VisitDefault(node), });
public void ChoicesAnnotations() { var code = @" choice Gender = | ""Male"" | ""Female"" @ Non-binary option | ""Other"" "; var tokens = new Lexer().Lex(code); var parseTree = new Parser(tokens).Parse().ToList(); Assert.NotNull(parseTree); Assert.Single(parseTree); ASTChoice choice = parseTree[0] as ASTChoice; ASTOption option = choice.Options[2]; Assert.Equal("Other", option.Value); Assert.Single(option.Annotations); Assert.Equal("Non-binary option", option.Annotations.First().Value); }
public override string VisitASTOption(ASTOption astOption) { return(""); }
public override string VisitASTOption(ASTOption astOption) { throw new NotImplementedException(); }
public override T VisitASTOption(ASTOption astOption) => d;
public override XmlSchemaObject?VisitASTOption(ASTOption astOption) { return(null); }