@Nonnull @Override public BuilderAnnotationSetPool getAnnotationSetSection() { return new BuilderAnnotationSetPool(DexBuilder.this); }
@Nonnull public BuilderField internField(@Nonnull String definingClass, @Nonnull String name, @Nonnull String type, int accessFlags, @Nullable EncodedValue initialValue, @Nonnull Set<? extends Annotation> annotations) { return new BuilderField(fieldSection.internField(definingClass, name, type), accessFlags, internNullableEncodedValue(initialValue), annotationSetSection.internAnnotationSet(annotations)); }
@Nonnull public BuilderField internField(@Nonnull String definingClass, @Nonnull String name, @Nonnull String type, int accessFlags, @Nullable EncodedValue initialValue, @Nonnull Set<? extends Annotation> annotations) { return new BuilderField(context.fieldPool.internField(definingClass, name, type), accessFlags, context.internNullableEncodedValue(initialValue), context.annotationSetPool.internAnnotationSet(annotations)); }
@Nonnull @Override public BuilderAnnotationSetPool getAnnotationSetSection() { return new BuilderAnnotationSetPool(DexBuilder.this); }
@Nonnull public BuilderField internField(@Nonnull String definingClass, @Nonnull String name, @Nonnull String type, int accessFlags, @Nullable EncodedValue initialValue, @Nonnull Set<? extends Annotation> annotations) { return new BuilderField(fieldSection.internField(definingClass, name, type), accessFlags, internNullableEncodedValue(initialValue), annotationSetSection.internAnnotationSet(annotations)); }
BuilderContext() { this.stringPool = new BuilderStringPool(); this.typePool = new BuilderTypePool(this); this.fieldPool = new BuilderFieldPool(this); this.methodPool = new BuilderMethodPool(this); this.protoPool = new BuilderProtoPool(this); this.classPool = new BuilderClassPool(); this.typeListPool = new BuilderTypeListPool(this); this.annotationPool = new BuilderAnnotationPool(this); this.annotationSetPool = new BuilderAnnotationSetPool(this); }
@Nonnull public BuilderMethod internMethod(@Nonnull String definingClass, @Nonnull String name, @Nullable List<? extends MethodParameter> parameters, @Nonnull String returnType, int accessFlags, @Nonnull Set<? extends Annotation> annotations, @Nullable MethodImplementation methodImplementation) { if (parameters == null) { parameters = ImmutableList.of(); } return new BuilderMethod(methodSection.internMethod(definingClass, name, parameters, returnType), internMethodParameters(parameters), accessFlags, annotationSetSection.internAnnotationSet(annotations), methodImplementation); }
@Nonnull public BuilderMethod internMethod(@Nonnull String definingClass, @Nonnull String name, @Nullable List<? extends MethodParameter> parameters, @Nonnull String returnType, int accessFlags, @Nonnull Set<? extends Annotation> annotations, @Nullable MethodImplementation methodImplementation) { if (parameters == null) { parameters = ImmutableList.of(); } return new BuilderMethod(context.methodPool.internMethod(definingClass, name, parameters, returnType), internMethodParameters(parameters), accessFlags, context.annotationSetPool.internAnnotationSet(annotations), methodImplementation); }
@Nonnull public BuilderMethod internMethod(@Nonnull String definingClass, @Nonnull String name, @Nullable List<? extends MethodParameter> parameters, @Nonnull String returnType, int accessFlags, @Nonnull Set<? extends Annotation> annotations, @Nullable MethodImplementation methodImplementation) { if (parameters == null) { parameters = ImmutableList.of(); } return new BuilderMethod(methodSection.internMethod(definingClass, name, parameters, returnType), internMethodParameters(parameters), accessFlags, annotationSetSection.internAnnotationSet(annotations), methodImplementation); }
context.typeListPool.internTypeList(interfaces), context.stringPool.internNullableString(sourceFile), context.annotationSetPool.internAnnotationSet(annotations), fields, methods));
@Nonnull private BuilderMethodParameter internMethodParameter(@Nonnull MethodParameter methodParameter) { return new BuilderMethodParameter( typeSection.internType(methodParameter.getType()), stringSection.internNullableString(methodParameter.getName()), annotationSetSection.internAnnotationSet(methodParameter.getAnnotations())); }
typeListSection.internTypeList(interfaces), stringSection.internNullableString(sourceFile), annotationSetSection.internAnnotationSet(annotations), staticFields, instanceFields,
@Nonnull private BuilderMethodParameter internMethodParameter(@Nonnull MethodParameter methodParameter) { return new BuilderMethodParameter( context.typePool.internType(methodParameter.getType()), context.stringPool.internNullableString(methodParameter.getName()), context.annotationSetPool.internAnnotationSet(methodParameter.getAnnotations())); }
typeListSection.internTypeList(interfaces), stringSection.internNullableString(sourceFile), annotationSetSection.internAnnotationSet(annotations), staticFields, instanceFields,
@Nonnull private BuilderMethodParameter internMethodParameter(@Nonnull MethodParameter methodParameter) { return new BuilderMethodParameter( typeSection.internType(methodParameter.getType()), stringSection.internNullableString(methodParameter.getName()), annotationSetSection.internAnnotationSet(methodParameter.getAnnotations())); }