Class ImmutableAttributeBuilderThirdPartyModel


  • @ParametersAreNonnullByDefault
    @Generated("org.immutables.processor.ProxyProcessor")
    @Immutable
    final class ImmutableAttributeBuilderThirdPartyModel
    extends AttributeBuilderThirdPartyModel
    Immutable implementation of AttributeBuilderThirdPartyModel.

    Use the builder to create immutable instances: ImmutableAttributeBuilderThirdPartyModel.builder().

    • Field Detail

      • buildMethod

        private final javax.lang.model.element.ExecutableElement buildMethod
      • copyMethod

        private final javax.lang.model.element.ExecutableElement copyMethod
      • builderMethod

        private final javax.lang.model.element.ExecutableElement builderMethod
      • builderType

        private final javax.lang.model.element.TypeElement builderType
    • Constructor Detail

      • ImmutableAttributeBuilderThirdPartyModel

        private ImmutableAttributeBuilderThirdPartyModel​(javax.lang.model.element.ExecutableElement buildMethod,
                                                         javax.lang.model.element.ExecutableElement copyMethod,
                                                         javax.lang.model.element.ExecutableElement builderMethod,
                                                         javax.lang.model.element.TypeElement builderType)
    • Method Detail

      • withBuildMethod

        public final ImmutableAttributeBuilderThirdPartyModel withBuildMethod​(javax.lang.model.element.ExecutableElement value)
        Copy the current immutable object by setting a value for the buildMethod attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for buildMethod
        Returns:
        A modified copy of the this object
      • withCopyMethod

        public final ImmutableAttributeBuilderThirdPartyModel withCopyMethod​(javax.lang.model.element.ExecutableElement value)
        Copy the current immutable object by setting a value for the copyMethod attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for copyMethod
        Returns:
        A modified copy of the this object
      • withBuilderMethod

        public final ImmutableAttributeBuilderThirdPartyModel withBuilderMethod​(javax.lang.model.element.ExecutableElement value)
        Copy the current immutable object by setting a value for the builderMethod attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for builderMethod
        Returns:
        A modified copy of the this object
      • withBuilderType

        public final ImmutableAttributeBuilderThirdPartyModel withBuilderType​(javax.lang.model.element.TypeElement value)
        Copy the current immutable object by setting a value for the builderType attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for builderType
        Returns:
        A modified copy of the this object
      • equals

        public boolean equals​(@Nullable
                              java.lang.Object another)
        This instance is equal to all instances of ImmutableAttributeBuilderThirdPartyModel that have equal attribute values.
        Overrides:
        equals in class java.lang.Object
        Returns:
        true if this is equal to another instance
      • hashCode

        public int hashCode()
        Computes a hash code from attributes: buildMethod, copyMethod, builderMethod, builderType.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        hashCode value
      • toString

        public java.lang.String toString()
        Prints the immutable value AttributeBuilderThirdPartyModel with attribute values.
        Overrides:
        toString in class java.lang.Object
        Returns:
        A string representation of the value