Package serp.bytecode

Class FieldInstruction

    • Method Detail

      • getFieldIndex

        public int getFieldIndex()
        Return the index in the class ConstantPool of the ComplexEntry describing the field to operate on.
      • setFieldIndex

        public FieldInstruction setFieldIndex​(int index)
        Set the index in the class ConstantPool of the ComplexEntry describing the field to operate on.
        Returns:
        this instruction, for method chaining
      • getField

        public BCField getField()
        Return the field this instruction operates on, or null if not set.
      • setField

        public FieldInstruction setField​(BCField field)
        Set the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(java.lang.reflect.Field field)
        Set the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(java.lang.String dec,
                                         java.lang.String name,
                                         java.lang.String type)
        Set the field this instruction operates on.
        Parameters:
        dec - the full class name of the field's declaring class
        name - the field name
        type - the full class name of the field type
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(java.lang.String name,
                                         java.lang.String type)
        Set the field this instruction operates on, for fields that are declared by the current class.
        Parameters:
        name - the field name
        type - the full class name of the field type
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(java.lang.Class dec,
                                         java.lang.String name,
                                         java.lang.Class type)
        Set the field this instruction operates on.
        Parameters:
        dec - the field's declaring class
        name - the field name
        type - the class of the field type
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(java.lang.String name,
                                         java.lang.Class type)
        Set the field this instruction operates on, for fields that are declared by the current class.
        Parameters:
        name - the field name
        type - the class of the field type
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(BCClass dec,
                                         java.lang.String name,
                                         BCClass type)
        Set the field this instruction operates on.
        Parameters:
        dec - the field's declaring class
        name - the field name
        type - the class of the field type
        Returns:
        this instruction, for method chaining
      • setField

        public FieldInstruction setField​(java.lang.String name,
                                         BCClass type)
        Set the field this instruction operates on, for fields that are declared by the current class.
        Parameters:
        name - the field name
        type - the class of the field type
        Returns:
        this instruction, for method chaining
      • getFieldName

        public java.lang.String getFieldName()
        Return the name of the field this instruction operates on, or null if not set.
      • setFieldName

        public FieldInstruction setFieldName​(java.lang.String name)
        Set the name of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • getFieldTypeName

        public java.lang.String getFieldTypeName()
        Return the type of the field this instruction operates on, or null if not set.
      • getFieldType

        public java.lang.Class getFieldType()
        Return the type of the field this instruction operates on, or null if not set.
      • getFieldTypeBC

        public BCClass getFieldTypeBC()
        Return the type of the field this instruction operates on, or null if not set.
      • setFieldType

        public FieldInstruction setFieldType​(java.lang.String type)
        Set the type of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • setFieldType

        public FieldInstruction setFieldType​(java.lang.Class type)
        Set the type of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • setFieldType

        public FieldInstruction setFieldType​(BCClass type)
        Set the type of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • getFieldDeclarerName

        public java.lang.String getFieldDeclarerName()
        Return the declaring class of the field this instruction operates on, or null if not set.
      • getFieldDeclarerType

        public java.lang.Class getFieldDeclarerType()
        Return the declaring class of the field this instruction operates on, or null if not set.
      • getFieldDeclarerBC

        public BCClass getFieldDeclarerBC()
        Return the declaring class of the field this instruction operates on, or null if not set.
      • setFieldDeclarer

        public FieldInstruction setFieldDeclarer​(java.lang.String type)
        Set the declaring class of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • setFieldDeclarer

        public FieldInstruction setFieldDeclarer​(java.lang.Class type)
        Set the declaring class of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • setFieldDeclarer

        public FieldInstruction setFieldDeclarer​(BCClass type)
        Set the declaring class of the field this instruction operates on.
        Returns:
        this instruction, for method chaining
      • equalsInstruction

        public boolean equalsInstruction​(Instruction other)
        FieldInstructions are equal if the field they reference is the same, or if the field of either is unset.
        Overrides:
        equalsInstruction in class Instruction