@Override public Choice<Unifier> visitPrimitiveType(PrimitiveTypeTree tree, Unifier unifier) { return Choice.condition(getPrimitiveTypeKind().equals(tree.getPrimitiveTypeKind()), unifier); }
@Override public Number visitTypeCast(TypeCastTree node, Void p) { Number value = node.getExpression().accept(this, null); if (value == null) { return null; } if (!(node.getType() instanceof PrimitiveTypeTree)) { return null; } TypeKind kind = ((PrimitiveTypeTree) node.getType()).getPrimitiveTypeKind(); return cast(kind, value); }
@Override public JType visitPrimitiveType(PrimitiveTypeTree pt, Void aVoid) { return primitive(pt, pt.getPrimitiveTypeKind()); }
@Override public Void visitPrimitiveType(PrimitiveTypeTree expected, Tree actual) { Optional<PrimitiveTypeTree> other = checkTypeAndCast(expected, actual); if (!other.isPresent()) { addTypeMismatch(expected, actual); return null; } checkForDiff(expected.getPrimitiveTypeKind() == other.get().getPrimitiveTypeKind(), "Expected primitive type kind to be <%s> but was <%s>.", expected.getPrimitiveTypeKind(), other.get().getPrimitiveTypeKind()); return null; }
@Override public Void visitPrimitiveType(PrimitiveTypeTree expected, Tree actual) { Optional<PrimitiveTypeTree> other = checkTypeAndCast(expected, actual); if (!other.isPresent()) { addTypeMismatch(expected, actual); return null; } checkForDiff(expected.getPrimitiveTypeKind() == other.get().getPrimitiveTypeKind(), "Expected primitive type kind to be <%s> but was <%s>.", expected.getPrimitiveTypeKind(), other.get().getPrimitiveTypeKind()); return null; }
@Override public Void visitPrimitiveType(PrimitiveTypeTree expected, Tree actual) { Optional<PrimitiveTypeTree> other = checkTypeAndCast(expected, actual); if (!other.isPresent()) { addTypeMismatch(expected, actual); return null; } checkForDiff(expected.getPrimitiveTypeKind() == other.get().getPrimitiveTypeKind(), "Expected primitive type kind to be <%s> but was <%s>.", expected.getPrimitiveTypeKind(), other.get().getPrimitiveTypeKind()); return null; }
@Override public String visitPrimitiveType(PrimitiveTypeTree reference, Void v) { return (reference != null) ? detailedKindString(reference, reference.getPrimitiveTypeKind()) : ""; }
@Override public String visitPrimitiveType(PrimitiveTypeTree reference, Void v) { return (reference != null) ? detailedKindString(reference, reference.getPrimitiveTypeKind()) : ""; }
public Boolean visitPrimitiveType(PrimitiveTypeTree node, TreePath p) { if (p == null) return super.visitPrimitiveType(node, p); PrimitiveTypeTree t = (PrimitiveTypeTree) p.getLeaf(); return node.getPrimitiveTypeKind() == t.getPrimitiveTypeKind(); }
@Override public String visitPrimitiveType(PrimitiveTypeTree reference, Void v) { return (reference != null) ? detailedKindString(reference, reference.getPrimitiveTypeKind()) : ""; }
@Override public Choice<Unifier> visitPrimitiveType(PrimitiveTypeTree tree, Unifier unifier) { return Choice.condition(getPrimitiveTypeKind().equals(tree.getPrimitiveTypeKind()), unifier); }
private static boolean isGetter(Tree member) { return member.getKind() == Tree.Kind.METHOD && name(member).startsWith("get") //NOI18N && ((MethodTree)member).getParameters().isEmpty() && (((MethodTree)member).getReturnType().getKind() != Tree.Kind.PRIMITIVE_TYPE || ((PrimitiveTypeTree)((MethodTree)member).getReturnType()).getPrimitiveTypeKind() != TypeKind.VOID); }
private static boolean isBooleanGetter(Tree member) { return member.getKind() == Tree.Kind.METHOD && name(member).startsWith("is") //NOI18N && ((MethodTree)member).getParameters().isEmpty() && ((MethodTree)member).getReturnType().getKind() == Tree.Kind.PRIMITIVE_TYPE && ((PrimitiveTypeTree)((MethodTree)member).getReturnType()).getPrimitiveTypeKind() == TypeKind.BOOLEAN; }
private static boolean isSetter(Tree member) { return member.getKind() == Tree.Kind.METHOD && name(member).startsWith("set") //NOI18N && ((MethodTree)member).getParameters().size() == 1 && ((MethodTree)member).getReturnType().getKind() == Tree.Kind.PRIMITIVE_TYPE && ((PrimitiveTypeTree)((MethodTree)member).getReturnType()).getPrimitiveTypeKind() == TypeKind.VOID; }
private static String[] correspondingGSNames(Tree member) { if (isSetter(member)) { String name = name(member); VariableTree param = ((MethodTree)member).getParameters().get(0); if (param.getType().getKind() == Tree.Kind.PRIMITIVE_TYPE && ((PrimitiveTypeTree)param.getType()).getPrimitiveTypeKind() == TypeKind.BOOLEAN) { return new String[] {'g' + name.substring(1), "is" + name.substring(3)}; } return new String[] {'g' + name.substring(1)}; } if (isGetter(member)) { return new String[] {'s' + name(member).substring(1)}; } if (isBooleanGetter(member)) { return new String[] {"set" + name(member).substring(2)}; //NOI18N } return null; }
@Override public Number visitTypeCast(TypeCastTree node, Void p) { Number value = node.getExpression().accept(this, null); if (value == null) { return null; } if (!(node.getType() instanceof PrimitiveTypeTree)) { return null; } TypeKind kind = ((PrimitiveTypeTree) node.getType()).getPrimitiveTypeKind(); return cast(kind, value); }
} else if (methodName.startsWith("is")) { // NOI18N if ((returnType.getKind() == Tree.Kind.PRIMITIVE_TYPE) && (((PrimitiveTypeTree)returnType).getPrimitiveTypeKind() == TypeKind.BOOLEAN)) { propName = methodName.substring(2); } else { if (returnType.getKind() == Tree.Kind.PRIMITIVE_TYPE) { PrimitiveTypeTree ptree = (PrimitiveTypeTree)returnType; if (ptree.getPrimitiveTypeKind() == TypeKind.VOID) { continue; // void return type
/** * Creates a getter method for a field. * * @param field field to create getter for * @return the getter method * @since 0.20 */ public MethodTree createGetter(VariableTree field) { assert field != null; TreeMaker make = copy.getTreeMaker(); CodeStyle cs = DiffContext.getCodeStyle(copy); Set<Modifier> mods = EnumSet.of(Modifier.PUBLIC); boolean isStatic = field.getModifiers().getFlags().contains(Modifier.STATIC); if (isStatic) { mods.add(Modifier.STATIC); } Tree type = field.getType(); boolean isBoolean = type.getKind() == Tree.Kind.PRIMITIVE_TYPE && ((PrimitiveTypeTree) type).getPrimitiveTypeKind() == TypeKind.BOOLEAN; String getterName = CodeStyleUtils.computeGetterName(field.getName(), isBoolean, isStatic, cs); BlockTree body = make.Block(Collections.singletonList(make.Return(make.Identifier(field.getName()))), false); return make.Method(make.Modifiers(mods), getterName, type, Collections.<TypeParameterTree>emptyList(), Collections.<VariableTree>emptyList(), Collections.<ExpressionTree>emptyList(), body, null); }
@Override public Tree visitPrimitiveType(PrimitiveTypeTree tree, Void p) { PrimitiveTypeTree n = make.PrimitiveType(tree.getPrimitiveTypeKind()); model.setType(n, model.getType(tree)); comments.copyComments(tree, n); model.setPos(n, model.getPos(tree)); return n; }
@Override public Boolean visitPrimitiveType(PrimitiveTypeTree node, Void p) { switch (node.getPrimitiveTypeKind()) { case BOOLEAN: accept(BOOLEAN);