Class LambdaExpression


  • public class LambdaExpression
    extends java.lang.Object
    A small helper class that captures useful information about a lambda expression as encountered in a class file.
    • Field Detail

      • bootstrapMethodIndex

        public int bootstrapMethodIndex
      • factoryMethodDescriptor

        public java.lang.String factoryMethodDescriptor
      • interfaces

        public java.lang.String[] interfaces
      • bridgeMethodDescriptors

        public java.lang.String[] bridgeMethodDescriptors
      • interfaceMethod

        public java.lang.String interfaceMethod
      • interfaceMethodDescriptor

        public java.lang.String interfaceMethodDescriptor
      • invokedReferenceKind

        public int invokedReferenceKind
      • invokedClassName

        public java.lang.String invokedClassName
      • invokedMethodName

        public java.lang.String invokedMethodName
      • invokedMethodDesc

        public java.lang.String invokedMethodDesc
      • referencedInvokedClass

        public Clazz referencedInvokedClass
      • referencedInvokedMethod

        public Method referencedInvokedMethod
    • Constructor Detail

      • LambdaExpression

        public LambdaExpression​(ProgramClass referencedClass,
                                int bootstrapMethodIndex,
                                BootstrapMethodInfo bootstrapMethodInfo,
                                java.lang.String factoryMethodDescriptor,
                                java.lang.String[] interfaces,
                                java.lang.String[] bridgeMethodDescriptors,
                                java.lang.String interfaceMethod,
                                java.lang.String interfaceMethodDescriptor,
                                int invokedReferenceKind,
                                java.lang.String invokedClassName,
                                java.lang.String invokedMethodName,
                                java.lang.String invokedMethodDesc,
                                Clazz referencedInvokedClass,
                                Method referencedInvokedMethod,
                                int lambdaExpressionIndex)
        Creates a new initialized LambdaExpression (except for the lambdaClass).
    • Method Detail

      • getLambdaClassName

        public java.lang.String getLambdaClassName()
        Returns the class name of the converted anonymous class.
      • getConstructorDescriptor

        public java.lang.String getConstructorDescriptor()
      • isSerializable

        public boolean isSerializable()
        Returns whether the lambda expression is serializable.
      • isMethodReference

        public boolean isMethodReference()
        Returns whether the lambda expression is actually a method reference.
      • isStateless

        public boolean isStateless()
        Returns whether the lambda expression is stateless.
      • invokesStaticInterfaceMethod

        public boolean invokesStaticInterfaceMethod()
        Returns whether the invoked method is a static interface method.
      • needsAccessorMethod

        public boolean needsAccessorMethod()
        Returns whether an accessor method is needed to access the invoked method from the lambda class.
      • referencesPrivateConstructor

        public boolean referencesPrivateConstructor()
        Returns whether the lambda expression is a method reference to a private constructor.