Class Handle

java.lang.Object
org.jfuncmachine.compiler.classgen.Handle

public class Handle extends Object
A handle to a field or method that eventually gets mapped to a MethodHandle for bootstrap methods.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final String
    The type descriptor of the field or method
    static final int
    This handle is for fetching a field value
    static final int
    This handle is for fetching a static field value
    static final int
    This handle is for a method on an interface
    static final int
    This handle is for a Java private method, constructor, or super method
    static final int
    This handle is for a static Java method
    static final int
    This handle is for a non-static Java method
    final boolean
    If true, this handle refers to a member of an interface
    final String
    The name of the method/field this handle refers to
    static final int
    This handle is for a Java private method, constructor, or super method
    final String
    The class containing this handle
    static final int
    This handle is for setting a field value
    static final int
    This handle is for setting a static field value
    final int
    The type of handle this is
  • Constructor Summary

    Constructors
    Constructor
    Description
    Handle(int tag, String owner, String name, String descriptor, boolean isInterface)
    Create a new handle
  • Method Summary

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • GETFIELD

      public static final int GETFIELD
      This handle is for fetching a field value
      See Also:
    • GETSTATIC

      public static final int GETSTATIC
      This handle is for fetching a static field value
      See Also:
    • PUTFIELD

      public static final int PUTFIELD
      This handle is for setting a field value
      See Also:
    • PUTSTATIC

      public static final int PUTSTATIC
      This handle is for setting a static field value
      See Also:
    • INVOKEVIRTUAL

      public static final int INVOKEVIRTUAL
      This handle is for a non-static Java method
      See Also:
    • INVOKESTATIC

      public static final int INVOKESTATIC
      This handle is for a static Java method
      See Also:
    • INVOKESPECIAL

      public static final int INVOKESPECIAL
      This handle is for a Java private method, constructor, or super method
      See Also:
    • NEWINVOKESPECIAL

      public static final int NEWINVOKESPECIAL
      This handle is for a Java private method, constructor, or super method
      See Also:
    • INVOKEINTERFACE

      public static final int INVOKEINTERFACE
      This handle is for a method on an interface
      See Also:
    • tag

      public final int tag
      The type of handle this is
    • owner

      public final String owner
      The class containing this handle
    • name

      public final String name
      The name of the method/field this handle refers to
    • descriptor

      public final String descriptor
      The type descriptor of the field or method
    • isInterface

      public final boolean isInterface
      If true, this handle refers to a member of an interface
  • Constructor Details

    • Handle

      public Handle(int tag, String owner, String name, String descriptor, boolean isInterface)
      Create a new handle
      Parameters:
      tag - The type of handle this is
      owner - The class containing this handle
      name - The name of the method/field this handle refers to
      descriptor - The type descriptor of the field or method
      isInterface - If true, this handle refers to a member of an interface