public static Builder builder(Type type, String name, Modifier... modifiers) { return builder(TypeName.get(type), name, modifiers); }
private FieldSpec supertypeBindingField(TypeMirror supertype) { return FieldSpec.builder(bindingOf(supertype), "supertype", PRIVATE).build(); }
public Builder addField(TypeName type, String name, Modifier... modifiers) { return addField(FieldSpec.builder(type, name, modifiers).build()); }
public TypeSpecDataHolder.Builder addField(TypeName type, String name, Modifier... modifiers) { return addField(FieldSpec.builder(type, name, modifiers).build()); }
private FieldSpec memberBindingField(boolean disambiguateFields, Element field) { return FieldSpec.builder(bindingOf(field.asType()), fieldName(disambiguateFields, field), PRIVATE).build(); }
private FieldSpec parameterBindingField(boolean disambiguateFields, VariableElement parameter) { return FieldSpec.builder(bindingOf(parameter.asType()), parameterName(disambiguateFields, parameter), PRIVATE).build(); }
/** * A field is created to save a reference to the model we create. Before the new buildModels phase * we check that it is the same object as on the controller, validating that the user has not * manually assigned a new model to the AutoModel field. */ private Iterable<FieldSpec> buildFieldsToSaveModelsForValidation( ControllerClassInfo controllerInfo) { List<FieldSpec> fields = new ArrayList<>(); for (ControllerModelField model : controllerInfo.getModels()) { fields.add(FieldSpec.builder(getClassName(UNTYPED_EPOXY_MODEL_TYPE), model.getFieldName(), Modifier.PRIVATE).build()); } return fields; }
default void addToBuilder(@NonNull TypeSpec.Builder builder, @NonNull ClassName builderName, @NonNull CodeBlock.Builder constructorAlways, @NonNull CodeBlock.Builder constructorWhenAnnotationPresent, CodeBlock.Builder constructorWhenAnnotationMissing) { final FieldSpec.Builder field = FieldSpec.builder(getType(), getName(), Modifier.PRIVATE).addAnnotations(getAnnotations()); configureField(field); builder.addField(field.build()); }
private FieldSpec defaultField(NameAllocator nameAllocator, Field field, TypeName fieldType) { String defaultFieldName = "DEFAULT_" + nameAllocator.get(field).toUpperCase(Locale.US); return FieldSpec.builder(fieldType, defaultFieldName, PUBLIC, STATIC, FINAL) .initializer(defaultValue(field)) .build(); }
private static FieldSpec matcherComponentFieldBuilder(final PropModel prop) { return FieldSpec.builder(getMatcherConditionTypeName(), getPropComponentMatcherName(prop)) .addAnnotation(Nullable.class) .build(); }
private static FieldSpec matcherFieldBuilder(final PropModel prop) { return FieldSpec.builder(getPropMatcherType(prop), getPropMatcherName(prop)) .addAnnotation(Nullable.class) .build(); }
@Nonnull private String functionArgsHolder(FunctionDescriptor<?> function) { // create the argument holder for the function invocation (and create the holder class if it doesn't exist yet) final String functionArgsClassname = functionArgsHolderClass(function); final String functionArgsMember = functionReference(function) + "$" + subExpressionName(); classFile.addField(FieldSpec.builder( ClassName.bestGuess(functionArgsClassname), functionArgsMember, Modifier.PRIVATE) .build()); lateConstructorBlock.addStatement("$L = new $L()", functionArgsMember, functionArgsClassname); return functionArgsMember; }
private FieldSpec messageAdapterField(String adapterName, ClassName javaType, ClassName adapterJavaType) { FieldSpec.Builder result = FieldSpec.builder(adapterOf(javaType), adapterName) .addModifiers(PUBLIC, STATIC, FINAL); if (emitCompact) { result.initializer("$T.newMessageAdapter($T.class)", ProtoAdapter.class, javaType); } else { result.initializer("new $T()", adapterJavaType); } return result.build(); }
@Override public void exitVariableAssignStatement(VarAssignStatement assign) { final Object value = blockOrMissing(codeSnippet.get(assign.getValueExpression()), assign.getValueExpression()); final Class type = assign.getValueExpression().getType(); // always hoist declaration hoistedExpressionMembers.add(FieldSpec.builder(type, "var$" + assign.getName(), Modifier.PRIVATE).build()); if (assign.getValueExpression().isConstant()) { // also hoist the assignment hoistedConstantExpressions.addStatement("var$$$L = $L", assign.getName(), value); } else { currentMethod.addStatement("var$$$L = $L", assign.getName(), value); } }
static TypeSpecDataHolder generateEventTriggers(SpecModel specModel) { final TypeSpecDataHolder.Builder typeSpecDataHolder = TypeSpecDataHolder.newBuilder(); for (SpecMethodModel<EventMethod, EventDeclarationModel> eventMethodModel : specModel.getTriggerMethods()) { typeSpecDataHolder.addField( FieldSpec.builder( ClassNames.EVENT_TRIGGER, getEventTriggerInstanceName(eventMethodModel.name)) .build()); } return typeSpecDataHolder.build(); }
static TypeSpecDataHolder generateEventHandlers(SpecModel specModel) { final TypeSpecDataHolder.Builder typeSpecDataHolder = TypeSpecDataHolder.newBuilder(); for (EventDeclarationModel eventDeclaration : specModel.getEventDeclarations()) { typeSpecDataHolder.addField( FieldSpec.builder( ClassNames.EVENT_HANDLER, getEventHandlerInstanceName(eventDeclaration.name)) .build()); } return typeSpecDataHolder.build(); }
private static TypeSpecDataHolder generateOptionalField(MethodParamModel optionalField) { final TypeSpecDataHolder.Builder typeSpecDataHolder = TypeSpecDataHolder.newBuilder(); if (optionalField == null) { return typeSpecDataHolder.build(); } typeSpecDataHolder.addField( FieldSpec.builder(optionalField.getTypeName(), optionalField.getName()).build()); return typeSpecDataHolder.build(); }
static TypeSpecDataHolder generateInterStageInputs(SpecModel specModel) { final TypeSpecDataHolder.Builder typeSpecDataHolder = TypeSpecDataHolder.newBuilder(); final ImmutableList<InterStageInputParamModel> interStageInputs = specModel.getInterStageInputs(); for (InterStageInputParamModel interStageInput : interStageInputs) { typeSpecDataHolder.addField( FieldSpec.builder(interStageInput.getTypeName().box(), interStageInput.getName()) .build()); } return typeSpecDataHolder.build(); }
@Override public TypeSpecDataHolder generateInjectedFields( ImmutableList<InjectPropModel> injectPropParams) { final TypeSpecDataHolder.Builder builder = TypeSpecDataHolder.newBuilder(); for (MethodParamModel injectedParam : injectPropParams) { final FieldSpec.Builder fieldBuilder = FieldSpec.builder(injectedParam.getTypeName(), injectedParam.getName()); for (AnnotationSpec extAnnotation : injectedParam.getExternalAnnotations()) { fieldBuilder.addAnnotation(extAnnotation); } builder.addField(fieldBuilder.build()); } return builder.build(); }
static TypeSpecDataHolder generateTreeProps(SpecModel specModel) { final TypeSpecDataHolder.Builder typeSpecDataHolder = TypeSpecDataHolder.newBuilder(); final ImmutableList<TreePropModel> treeProps = specModel.getTreeProps(); for (TreePropModel treeProp : treeProps) { typeSpecDataHolder.addField( FieldSpec.builder(treeProp.getTypeName(), treeProp.getName()) .addAnnotation(TreeProp.class) .addAnnotation( AnnotationSpec.builder(Comparable.class) .addMember("type", "$L", getComparableType(specModel, treeProp)) .build()) .build()); } return typeSpecDataHolder.build(); }