public Node createLeftAssociativeBinaryExpression( org.parboiled.Node<Node> head, List<org.parboiled.Node<Node>> operatorsNodes, List<String> operators, List<org.parboiled.Node<Node>> tail) { Node currentLeft = head.getValue(); for (int i = 0; i < operators.size(); i++) { currentLeft = new BinaryExpression() .rawLeft(currentLeft) .rawRight(tail.get(i).getValue()).rawOperator(operators.get(i)); source.registerStructure(currentLeft, operatorsNodes.get(i)); positionSpan(currentLeft, head, tail.get(i)); } return currentLeft; }
@CopyMethod static String getDescription(BinaryExpression self) { try { return self.astOperator().getSymbol(); } catch (Exception e) { return self.rawOperator(); } }
@CopyMethod static String getDescription(BinaryExpression self) { try { return self.astOperator().getSymbol(); } catch (Exception e) { return self.rawOperator(); } }
@CopyMethod static String getDescription(BinaryExpression self) { try { return self.astOperator().getSymbol(); } catch (Exception e) { return self.rawOperator(); } }
public Node createLeftAssociativeBinaryExpression( org.parboiled.Node<Node> head, List<org.parboiled.Node<Node>> operatorsNodes, List<String> operators, List<org.parboiled.Node<Node>> tail) { Node currentLeft = head.getValue(); for (int i = 0; i < operators.size(); i++) { currentLeft = new BinaryExpression() .rawLeft(currentLeft) .rawRight(tail.get(i).getValue()).rawOperator(operators.get(i)); source.registerStructure(currentLeft, operatorsNodes.get(i)); positionSpan(currentLeft, head, tail.get(i)); } return currentLeft; }
public Node createLeftAssociativeBinaryExpression( org.parboiled.Node<Node> head, List<org.parboiled.Node<Node>> operatorsNodes, List<String> operators, List<org.parboiled.Node<Node>> tail) { Node currentLeft = head.getValue(); for (int i = 0; i < operators.size(); i++) { currentLeft = new BinaryExpression() .rawLeft(currentLeft) .rawRight(tail.get(i).getValue()).rawOperator(operators.get(i)); source.registerStructure(currentLeft, operatorsNodes.get(i)); positionSpan(currentLeft, head, tail.get(i)); } return currentLeft; }
public Node createAssignmentExpression(Node lhs, String operator, Node rhs) { if (rhs == null && operator == null) return lhs; return posify(new BinaryExpression().rawLeft(lhs).rawRight(rhs).rawOperator(operator)); }
public Node createAssignmentExpression(Node lhs, String operator, Node rhs) { if (rhs == null && operator == null) return lhs; return posify(new BinaryExpression().rawLeft(lhs).rawRight(rhs).rawOperator(operator)); }
public Node createAssignmentExpression(Node lhs, String operator, Node rhs) { if (rhs == null && operator == null) return lhs; return posify(new BinaryExpression().rawLeft(lhs).rawRight(rhs).rawOperator(operator)); }
@Override public boolean visitBinaryExpression(BinaryExpression node) { BinaryOperator operator = node.astOperator(); int start = posOfStructure(node, node.rawOperator(), true); int end = node.getPosition().getEnd(); if (operator == BinaryOperator.PLUS) { if (tryStringCombine(node)) return true; } JCExpression lhs = toExpression(node.astLeft()); JCExpression rhs = toExpression(node.astRight()); if (operator == BinaryOperator.ASSIGN) { return set(node, setPos(start, end, treeMaker.Assign(lhs, rhs))); } if (operator.isAssignment()) { return set(node, setPos(start, end, treeMaker.Assignop(BINARY_OPERATORS.get(operator), lhs, rhs))); } return set(node, setPos(start, end, treeMaker.Binary(BINARY_OPERATORS.get(operator), lhs, rhs))); }
@Override public boolean visitBinaryExpression(BinaryExpression node) { BinaryOperator operator = node.astOperator(); int start = posOfStructure(node, node.rawOperator(), true); int end = node.getPosition().getEnd(); if (operator == BinaryOperator.PLUS) { if (tryStringCombine(node)) return true; } JCExpression lhs = toExpression(node.astLeft()); JCExpression rhs = toExpression(node.astRight()); if (operator == BinaryOperator.ASSIGN) { return set(node, setPos(start, end, treeMaker.Assign(lhs, rhs))); } if (operator.isAssignment()) { return set(node, setPos(start, end, treeMaker.Assignop(BINARY_OPERATORS.get(operator), lhs, rhs))); } return set(node, setPos(start, end, treeMaker.Binary(BINARY_OPERATORS.get(operator), lhs, rhs))); }
@Override public boolean visitBinaryExpression(BinaryExpression node) { BinaryOperator operator = node.astOperator(); int start = posOfStructure(node, node.rawOperator(), true); int end = node.getPosition().getEnd(); if (operator == BinaryOperator.PLUS) { if (tryStringCombine(node)) return true; } JCExpression lhs = toExpression(node.astLeft()); JCExpression rhs = toExpression(node.astRight()); if (operator == BinaryOperator.ASSIGN) { return set(node, setPos(start, end, treeMaker.Assign(lhs, rhs))); } if (operator.isAssignment()) { return set(node, setPos(start, end, treeMaker.Assignop(BINARY_OPERATORS.get(operator), lhs, rhs))); } return set(node, setPos(start, end, treeMaker.Binary(BINARY_OPERATORS.get(operator), lhs, rhs))); }
@Override public boolean visitBinaryExpression(BinaryExpression node) { parensOpen(node); String symbol; try { symbol = node.astOperator().getSymbol(); } catch (Exception e) { symbol = node.rawOperator(); } formatter.buildInline(node); formatter.property("operator", symbol); formatter.nameNextElement("left"); visit(node.rawLeft()); formatter.space(); formatter.operator(symbol); formatter.space(); formatter.nameNextElement("right"); visit(node.rawRight()); formatter.closeInline(); parensClose(node); return true; }
@Override public boolean visitBinaryExpression(BinaryExpression node) { parensOpen(node); String symbol; try { symbol = node.astOperator().getSymbol(); } catch (Exception e) { symbol = node.rawOperator(); } formatter.buildInline(node); formatter.property("operator", symbol); formatter.nameNextElement("left"); visit(node.rawLeft()); formatter.space(); formatter.operator(symbol); formatter.space(); formatter.nameNextElement("right"); visit(node.rawRight()); formatter.closeInline(); parensClose(node); return true; }
@Override public boolean visitBinaryExpression(BinaryExpression node) { parensOpen(node); String symbol; try { symbol = node.astOperator().getSymbol(); } catch (Exception e) { symbol = node.rawOperator(); } formatter.buildInline(node); formatter.property("operator", symbol); formatter.nameNextElement("left"); visit(node.rawLeft()); formatter.space(); formatter.operator(symbol); formatter.space(); formatter.nameNextElement("right"); visit(node.rawRight()); formatter.closeInline(); parensClose(node); return true; }