public PatternUst VisitMethodDeclaration(DslParser.MethodDeclarationContext context) { PatternUst result; IEnumerable <PatternUst> modifiers = ProcessLiteralsOrPatternIds(context._modifiers); PatternUst name = VisitLiteralOrPatternId(context.methodName); var bodyExpression = context.expression(); if (bodyExpression != null) { PatternUst body = VisitExpression(bodyExpression); result = new PatternMethodDeclaration(modifiers, name, body, context.GetTextSpan()); } else if (context.Ellipsis() != null) { // Any body result = new PatternMethodDeclaration(modifiers, name, true, context.GetTextSpan()); } else { result = new PatternMethodDeclaration(modifiers, name, false, context.GetTextSpan()); } return(result); }
public virtual T Visit(PatternMethodDeclaration patternMethodDeclaration) { return(VisitChildren(patternMethodDeclaration)); }