public PatternUst VisitObjectCreationExpression(DslParser.ObjectCreationExpressionContext context) { PatternUst literal = VisitLiteralOrPatternId(context.literalOrPatternId()); var typeToken = new PatternIdToken(literal.ToString(), literal.TextSpan); PatternArgs args = context.args() == null ? new PatternArgs() : (PatternArgs)VisitArgs(context.args()); var result = new PatternObjectCreateExpression(typeToken, args, context.GetTextSpan()); return(result); }
public UstNode VisitPatternId([NotNull] DslParser.PatternIdContext context) { string patternId = context.GetText(); if (SourceLanguage.IsCaseInsensitive() && !patternId.StartsWith("(?i)")) { patternId = "(?i)" + patternId; } IdToken result = new PatternIdToken(patternId, context.GetTextSpan()); return(result); }
public PatternUst VisitObjectCreationExpression(DslParser.ObjectCreationExpressionContext context) { List <PatternUst> literals = context.literalOrPatternId() .Select(VisitLiteralOrPatternId).ToList(); string typeString = string.Join(".", literals); TextSpan typeTextSpan = literals.Select(literal => literal.TextSpan).ToList().Union(); var typeToken = new PatternIdToken(typeString, typeTextSpan); PatternArgs args = context.args() == null ? new PatternArgs() : (PatternArgs)VisitArgs(context.args()); var result = new PatternObjectCreateExpression(typeToken, args, context.GetTextSpan()); return(result); }
private IdToken ProcessId(ITerminalNode idTerminal) { string id = idTerminal.GetText(); IdToken result; if (SourceLanguage.IsCaseInsensitive()) { result = new PatternIdToken("(?i)^" + id + "$", idTerminal.GetTextSpan()); } else { result = new IdToken(id, idTerminal.GetTextSpan(), null); } return(result); }
public virtual T Visit(PatternIdToken patternIdToken) { return(VisitChildren(patternIdToken)); }
private PatternUst ProcessId(ITerminalNode idTerminal) { var result = new PatternIdToken(idTerminal.GetText(), idTerminal.GetTextSpan()); return(result); }
public virtual void Exit(PatternIdToken patternIdToken) { }
public virtual void Enter(PatternIdToken patternIdToken) { }