private lombok.ast.Expression toSelect(char[][] tokens, long[] positions) { if (tokens.length < 2) return null; if (tokens.length != positions.length) throw new IllegalStateException("bug"); lombok.ast.Identifier current0 = toIdentifier(tokens[0], positions[0]); lombok.ast.Expression current = new lombok.ast.VariableReference().astIdentifier(current0); current.setPosition(current0.getPosition()); for (int i = 1; i < tokens.length; i++) { lombok.ast.Select select = new lombok.ast.Select().astIdentifier(toIdentifier(tokens[i], positions[i])); select.astOperand(current); current = select; } return current; }
private lombok.ast.Expression toSelect(char[][] tokens, long[] positions) { if (tokens.length < 2) return null; if (tokens.length != positions.length) throw new IllegalStateException("bug"); lombok.ast.Identifier current0 = toIdentifier(tokens[0], positions[0]); lombok.ast.Expression current = new lombok.ast.VariableReference().astIdentifier(current0); current.setPosition(current0.getPosition()); for (int i = 1; i < tokens.length; i++) { lombok.ast.Select select = new lombok.ast.Select().astIdentifier(toIdentifier(tokens[i], positions[i])); select.astOperand(current); current = select; } return current; }
private lombok.ast.Expression toSelect(char[][] tokens, long[] positions) { if (tokens.length < 2) return null; if (tokens.length != positions.length) throw new IllegalStateException("bug"); lombok.ast.Identifier current0 = toIdentifier(tokens[0], positions[0]); lombok.ast.Expression current = new lombok.ast.VariableReference().astIdentifier(current0); current.setPosition(current0.getPosition()); for (int i = 1; i < tokens.length; i++) { lombok.ast.Select select = new lombok.ast.Select().astIdentifier(toIdentifier(tokens[i], positions[i])); select.astOperand(current); current = select; } return current; }
@Override public void visitSingleNameReference(SingleNameReference node) { if (hasFlag(FlagKey.NAMEREFERENCE_IS_TYPE)) { set(node, setPosition(node, new lombok.ast.TypeReference().astParts().addToEnd(createTypeReferencePart(node.token, toLong(node.sourceStart, node.sourceEnd))))); return; } set(node, setPosition(node, new lombok.ast.VariableReference().astIdentifier(toIdentifier(node.token, node.sourceStart, node.sourceEnd)))); }
@Override public void visitSingleNameReference(SingleNameReference node) { if (hasFlag(FlagKey.NAMEREFERENCE_IS_TYPE)) { set(node, setPosition(node, new lombok.ast.TypeReference().astParts().addToEnd(createTypeReferencePart(node.token, toLong(node.sourceStart, node.sourceEnd))))); return; } set(node, setPosition(node, new lombok.ast.VariableReference().astIdentifier(toIdentifier(node.token, node.sourceStart, node.sourceEnd)))); }
@Override public void visitSingleNameReference(SingleNameReference node) { if (hasFlag(FlagKey.NAMEREFERENCE_IS_TYPE)) { set(node, setPosition(node, new lombok.ast.TypeReference().astParts().addToEnd(createTypeReferencePart(node.token, toLong(node.sourceStart, node.sourceEnd))))); return; } set(node, setPosition(node, new lombok.ast.VariableReference().astIdentifier(toIdentifier(node.token, node.sourceStart, node.sourceEnd)))); }
public Node createPrimary(Node identifier, Node methodArguments) { Identifier id = createIdentifierIfNeeded(identifier, currentPos()); if (methodArguments instanceof TemporaryNode.MethodArguments) { MethodInvocation invoke = new MethodInvocation().astName(id); for (Node arg : ((TemporaryNode.MethodArguments)methodArguments).arguments) { invoke.rawArguments().addToEnd(arg); } return posify(invoke); } else { VariableReference ref = new VariableReference().astIdentifier(id); DanglingNodes.addDanglingNode(ref, methodArguments); return posify(ref); } }
@Override public void visitIdent(JCIdent node) { String name = node.getName().toString(); if ("this".equals(name)) { This t = new This(); set(node, t); setConversionPositionInfo(t, "this", getPosition(node)); return; } if ("super".equals(name)) { Super s = new Super(); set(node, s); setConversionPositionInfo(s, "super", getPosition(node)); return; } Identifier id = setPos(node, new Identifier().astValue(name)); if (hasFlag(FlagKey.TYPE_REFERENCE)) { TypeReferencePart part = setPos(node, new TypeReferencePart().astIdentifier(id)); set(node, new TypeReference().astParts().addToEnd(part)); return; } set(node, new VariableReference().astIdentifier(id)); }
@Override public void visitIdent(JCIdent node) { String name = node.getName().toString(); if ("this".equals(name)) { This t = new This(); set(node, t); setConversionPositionInfo(t, "this", getPosition(node)); return; } if ("super".equals(name)) { Super s = new Super(); set(node, s); setConversionPositionInfo(s, "super", getPosition(node)); return; } Identifier id = setPos(node, new Identifier().astValue(name)); if (hasFlag(FlagKey.TYPE_REFERENCE)) { TypeReferencePart part = setPos(node, new TypeReferencePart().astIdentifier(id)); set(node, new TypeReference().astParts().addToEnd(part)); return; } set(node, new VariableReference().astIdentifier(id)); }
public Node createPrimary(Node identifier, Node methodArguments) { Identifier id = createIdentifierIfNeeded(identifier, currentPos()); if (methodArguments instanceof TemporaryNode.MethodArguments) { MethodInvocation invoke = new MethodInvocation().astName(id); for (Node arg : ((TemporaryNode.MethodArguments)methodArguments).arguments) { invoke.rawArguments().addToEnd(arg); } return posify(invoke); } else { VariableReference ref = new VariableReference().astIdentifier(id); DanglingNodes.addDanglingNode(ref, methodArguments); return posify(ref); } }
public Node createPrimary(Node identifier, Node methodArguments) { Identifier id = createIdentifierIfNeeded(identifier, currentPos()); if (methodArguments instanceof TemporaryNode.MethodArguments) { MethodInvocation invoke = new MethodInvocation().astName(id); for (Node arg : ((TemporaryNode.MethodArguments)methodArguments).arguments) { invoke.rawArguments().addToEnd(arg); } return posify(invoke); } else { VariableReference ref = new VariableReference().astIdentifier(id); DanglingNodes.addDanglingNode(ref, methodArguments); return posify(ref); } }
@Override public void visitIdent(JCIdent node) { String name = node.getName().toString(); if ("this".equals(name)) { This t = new This(); set(node, t); setConversionPositionInfo(t, "this", getPosition(node)); return; } if ("super".equals(name)) { Super s = new Super(); set(node, s); setConversionPositionInfo(s, "super", getPosition(node)); return; } Identifier id = setPos(node, new Identifier().astValue(name)); if (hasFlag(FlagKey.TYPE_REFERENCE)) { TypeReferencePart part = setPos(node, new TypeReferencePart().astIdentifier(id)); set(node, new TypeReference().astParts().addToEnd(part)); return; } set(node, new VariableReference().astIdentifier(id)); }