public static IParsingResult Parse(ParsingContext context) { RewindState rewind = context.RewindState; IParsingResult name = SimpleId.Parse(context); if (name != null) { return(name); } if (context.Parser.VerifyString("on")) { IParsingResult operatorName = OperatorName.Parse(context); if (operatorName != null) { IParsingResult arguments = TemplateArgs.Parse(context); return(new Operator(operatorName, arguments)); } context.Rewind(rewind); return(null); } if (context.Parser.VerifyString("dn")) { return(DestructorName.Parse(context)); } return(null); }
public static IParsingResult Parse(ParsingContext context) { IParsingResult name = UnresolvedType.Parse(context) ?? SimpleId.Parse(context); if (name != null) { return(new DestructorName(name)); } return(null); }
public static IParsingResult Parse(ParsingContext context) { return(SimpleId.Parse(context)); }