result = convertedChildren.isEmpty() ? Optional.absent() : Optional.of(convertedChildren); } else if (method == null) { result = nodeBuilder.createNonTerminal(ruleKey, rule, convertedChildren, node.getStartIndex(), node.getEndIndex()); } else { result = ReflectionUtils.invokeMethod(method, treeFactory, convertedChildren.toArray(new Object[0]));
private Object visitTerminal(ParseNode node) { TokenType type = null; if (node.getMatcher() instanceof TriviaExpression) { TriviaExpression ruleMatcher = (TriviaExpression) node.getMatcher(); if (ruleMatcher.getTriviaKind() == TriviaKind.SKIPPED_TEXT) { return null; } else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { addComment(node); return null; } else { throw new IllegalStateException("Unexpected trivia kind: " + ruleMatcher.getTriviaKind()); } } else if (node.getMatcher() instanceof TokenExpression) { TokenExpression ruleMatcher = (TokenExpression) node.getMatcher(); type = ruleMatcher.getTokenType(); if (GenericTokenType.COMMENT.equals(ruleMatcher.getTokenType())) { addComment(node); return null; } } Object result = nodeBuilder.createTerminal(input, node.getStartIndex(), node.getEndIndex(), trivias, type); trivias.clear(); return result; }
private Object visitTerminal(ParseNode node) { TokenType type = null; if (node.getMatcher() instanceof TriviaExpression) { TriviaExpression ruleMatcher = (TriviaExpression) node.getMatcher(); if (ruleMatcher.getTriviaKind() == TriviaKind.SKIPPED_TEXT) { return null; } else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { addComment(node); return null; } else { throw new IllegalStateException("Unexpected trivia kind: " + ruleMatcher.getTriviaKind()); } } else if (node.getMatcher() instanceof TokenExpression) { TokenExpression ruleMatcher = (TokenExpression) node.getMatcher(); type = ruleMatcher.getTokenType(); if (GenericTokenType.COMMENT.equals(ruleMatcher.getTokenType())) { addComment(node); return null; } } Object result = nodeBuilder.createTerminal(input, node.getStartIndex(), node.getEndIndex(), trivias, type); trivias.clear(); return result; }
result = convertedChildren.isEmpty() ? Optional.absent() : Optional.of(convertedChildren); } else if (method == null) { result = nodeBuilder.createNonTerminal(ruleKey, rule, convertedChildren, node.getStartIndex(), node.getEndIndex()); } else { result = ReflectionUtils.invokeMethod(method, treeFactory, convertedChildren.toArray(new Object[0]));