public A withClassRefTypeRef(ClassRef classRefTypeRef){ _visitables.remove(this.typeRef); if (classRefTypeRef!=null){ this.typeRef= new ClassRefBuilder(classRefTypeRef); _visitables.add(this.typeRef);} return (A) this; }
public A withClassRefReturnType(ClassRef classRefReturnType){ _visitables.remove(this.returnType); if (classRefReturnType!=null){ this.returnType= new ClassRefBuilder(classRefReturnType); _visitables.add(this.returnType);} return (A) this; }
public A withClassRef(ClassRef classRef){ _visitables.remove(this.classRef); if (classRef!=null){ this.classRef= new ClassRefBuilder(classRef); _visitables.add(this.classRef);} return (A) this; }
public A addAllToExtendsList(Collection<ClassRef> items){ if (this.extendsList == null) {this.extendsList = new ArrayList<ClassRefBuilder>();} for (ClassRef item : items) {ClassRefBuilder builder = new ClassRefBuilder(item);_visitables.add(builder);this.extendsList.add(builder);} return (A)this; }
public A addAllToImplementsList(Collection<ClassRef> items){ if (this.implementsList == null) {this.implementsList = new ArrayList<ClassRefBuilder>();} for (ClassRef item : items) {ClassRefBuilder builder = new ClassRefBuilder(item);_visitables.add(builder);this.implementsList.add(builder);} return (A)this; }
public A addToImplementsList(ClassRef... items){ if (this.implementsList == null) {this.implementsList = new ArrayList<ClassRefBuilder>();} for (ClassRef item : items) {ClassRefBuilder builder = new ClassRefBuilder(item);_visitables.add(builder);this.implementsList.add(builder);} return (A)this; }
public A addToExtendsList(ClassRef... items){ if (this.extendsList == null) {this.extendsList = new ArrayList<ClassRefBuilder>();} for (ClassRef item : items) {ClassRefBuilder builder = new ClassRefBuilder(item);_visitables.add(builder);this.extendsList.add(builder);} return (A)this; }
public A setToExtendsList(int index,ClassRef item){ if (this.extendsList == null) {this.extendsList = new ArrayList<ClassRefBuilder>();} ClassRefBuilder builder = new ClassRefBuilder(item); if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);} if (index < 0 || index >= extendsList.size()) { extendsList.add(builder); } else { extendsList.set(index, builder);} return (A)this; }
public A setToImplementsList(int index,ClassRef item){ if (this.implementsList == null) {this.implementsList = new ArrayList<ClassRefBuilder>();} ClassRefBuilder builder = new ClassRefBuilder(item); if (index < 0 || index >= _visitables.size()) { _visitables.add(builder); } else { _visitables.set(index, builder);} if (index < 0 || index >= implementsList.size()) { implementsList.add(builder); } else { implementsList.set(index, builder);} return (A)this; }
public A addToExtendsList(int index,ClassRef item){ if (this.extendsList == null) {this.extendsList = new ArrayList<ClassRefBuilder>();} ClassRefBuilder builder = new ClassRefBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.extendsList.add(index >= 0 ? index : extendsList.size(), builder); return (A)this; }
public A addToImplementsList(int index,ClassRef item){ if (this.implementsList == null) {this.implementsList = new ArrayList<ClassRefBuilder>();} ClassRefBuilder builder = new ClassRefBuilder(item);_visitables.add(index >= 0 ? index : _visitables.size(), builder);this.implementsList.add(index >= 0 ? index : implementsList.size(), builder); return (A)this; }
public A withTypeRef(TypeRef typeRef){ _visitables.remove(this.typeRef); if (typeRef instanceof VoidRef){ this.typeRef= new VoidRefBuilder((VoidRef)typeRef); _visitables.add(this.typeRef);} if (typeRef instanceof WildcardRef){ this.typeRef= new WildcardRefBuilder((WildcardRef)typeRef); _visitables.add(this.typeRef);} if (typeRef instanceof PrimitiveRef){ this.typeRef= new PrimitiveRefBuilder((PrimitiveRef)typeRef); _visitables.add(this.typeRef);} if (typeRef instanceof TypeParamRef){ this.typeRef= new TypeParamRefBuilder((TypeParamRef)typeRef); _visitables.add(this.typeRef);} if (typeRef instanceof ClassRef){ this.typeRef= new ClassRefBuilder((ClassRef)typeRef); _visitables.add(this.typeRef);} return (A) this; }
public A withReturnType(TypeRef returnType){ _visitables.remove(this.returnType); if (returnType instanceof VoidRef){ this.returnType= new VoidRefBuilder((VoidRef)returnType); _visitables.add(this.returnType);} if (returnType instanceof WildcardRef){ this.returnType= new WildcardRefBuilder((WildcardRef)returnType); _visitables.add(this.returnType);} if (returnType instanceof PrimitiveRef){ this.returnType= new PrimitiveRefBuilder((PrimitiveRef)returnType); _visitables.add(this.returnType);} if (returnType instanceof TypeParamRef){ this.returnType= new TypeParamRefBuilder((TypeParamRef)returnType); _visitables.add(this.returnType);} if (returnType instanceof ClassRef){ this.returnType= new ClassRefBuilder((ClassRef)returnType); _visitables.add(this.returnType);} return (A) this; }
public Set<ClassRef> apply(Set<ClassRef> source) { Set<ClassRef> result = new LinkedHashSet<ClassRef>(source); Set<TypeRef> typeArguments = findTypeArguments(source); for (TypeRef type : typeArguments) { Set<ClassRef> intermediate = new LinkedHashSet<ClassRef>(); for (ClassRef clazz : result) { intermediate.add(new ClassRefBuilder(clazz).accept(new TypeArgumentReplace(type, Generics.MAP.apply(type).toReference())).build()); } result = new LinkedHashSet<ClassRef>(intermediate); } return result; } };
/** * Creates a {@link ClassRef} without bounds. */ public ClassRef toUnboundedReference() { return new ClassRefBuilder() .withDefinition(this) .withArguments(new TypeRef[0]) .build(); }
private static final Set<TypeParamDef> extractParameters(ClassRef classRef) { final Set<TypeParamDef> result = new LinkedHashSet<TypeParamDef>(); final Set<TypeParamRef> refs = new LinkedHashSet<TypeParamRef>(); ClassRef ignored = new ClassRefBuilder(classRef).accept(new TypeParamDefColletor(result)).accept(new TypeParamRefColletor(refs)).build(); for (TypeParamRef typeParamRef : refs) { result.add(new TypeParamDefBuilder().withName(typeParamRef.getName()).withAttributes(typeParamRef.getAttributes()).build()); } return result; }
public TypeRef apply(TypeRef item) { if (item instanceof PrimitiveRef) { return new PrimitiveRefBuilder((PrimitiveRef) item).withDimensions(0).build(); } else if (item instanceof ClassRef) { return new ClassRefBuilder((ClassRef) item).withDimensions(0).build(); } else if (item instanceof TypeParamRef) { return new TypeParamRefBuilder((TypeParamRef) item).withDimensions(0).build(); } else { return item; } } };
private void visitMethodBuilder(MethodBuilder builder) { if (builder.getReturnType() instanceof ClassRef) { ClassRefBuilder classRefBuilder = new ClassRefBuilder((ClassRef) builder.getReturnType()); if (classRefBuilder.getDefinition() != null && classRefBuilder.getDefinition().getPackageName() != null && classRefBuilder.getDefinition().getPackageName().equals(target)) { classRefBuilder.editDefinition().withPackageName(replacement).endDefinition(); } builder.withReturnType(classRefBuilder.accept(this).build()); } }
private void visitPropertyBuilder(PropertyBuilder builder) { if (builder.getTypeRef() instanceof ClassRef) { ClassRefBuilder classRefBuilder = new ClassRefBuilder((ClassRef) builder.getTypeRef()); if (classRefBuilder.getDefinition() != null && classRefBuilder.getDefinition().getPackageName() != null && classRefBuilder.getDefinition().getPackageName().equals(target)) { classRefBuilder.editDefinition().withPackageName(replacement).endDefinition(); } builder.withTypeRef(classRefBuilder.accept(this).build()); } }
public ClassRef apply(TypeRef item) { TypeRef baseType = TypeAs.combine(UNWRAP_COLLECTION_OF, UNWRAP_ARRAY_OF).apply(item); if (baseType instanceof ClassRef) { baseType = new ClassRefBuilder((ClassRef)baseType).withArguments().build(); } WildcardRef wildcardRef = new WildcardRefBuilder().addToBounds(baseType).build(); return BuilderContextManager.getContext().getVisitableBuilderInterface().toReference(wildcardRef, Q); } };