Class FixedValue.ForOriginType

java.lang.Object
net.bytebuddy.implementation.FixedValue
net.bytebuddy.implementation.FixedValue.ForOriginType
All Implemented Interfaces:
InstrumentedType.Prepareable, FixedValue.AssignerConfigurable, Implementation
Enclosing class:
FixedValue

protected static class FixedValue.ForOriginType extends FixedValue implements FixedValue.AssignerConfigurable
A fixed value that appends the origin type of the instrumented type.
  • Constructor Details

    • ForOriginType

      protected ForOriginType()
      Creates a new fixed value appender for the origin type.
    • ForOriginType

      private ForOriginType(Assigner assigner, Assigner.Typing typing)
      Creates a new fixed value appender for the origin type.
      Parameters:
      assigner - The assigner to use for assigning the fixed value to the return type of the instrumented value.
      typing - Indicates if dynamic type castings should be attempted for incompatible assignments.
  • Method Details

    • withAssigner

      public Implementation withAssigner(Assigner assigner, Assigner.Typing typing)
      Defines an explicit assigner to this fixed value implementation.
      Specified by:
      withAssigner in interface FixedValue.AssignerConfigurable
      Parameters:
      assigner - The assigner to use for assigning the fixed value to the return type of the instrumented value.
      typing - Indicates if dynamic type castings should be attempted for incompatible assignments.
      Returns:
      A fixed value implementation that makes use of the given assigner.
    • appender

      public ByteCodeAppender appender(Implementation.Target implementationTarget)
      Creates a byte code appender that determines the implementation of the instrumented type's methods.
      Specified by:
      appender in interface Implementation
      Parameters:
      implementationTarget - The target of the current implementation.
      Returns:
      A byte code appender for implementing methods delegated to this implementation. This byte code appender is also responsible for handling methods that were added by this implementation on the call to InstrumentedType.Prepareable.prepare(InstrumentedType).
    • prepare

      public InstrumentedType prepare(InstrumentedType instrumentedType)
      Prepares a given instrumented type.
      Specified by:
      prepare in interface InstrumentedType.Prepareable
      Parameters:
      instrumentedType - The instrumented type in its current form.
      Returns:
      The prepared instrumented type.