Class Slot

java.lang.Object
org.htmlunit.corejs.javascript.Slot
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
AccessorSlot, LambdaSlot, LazyLoadSlot

public class Slot extends Object implements Serializable
A Slot is the base class for all properties stored in the ScriptableObject class. There are a number of different types of slots. This base class represents an "ordinary" property such as a primitive type or another object. Separate classes are used to represent properties that have various types of getter and setter methods.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • name

      Object name
    • indexOrHash

      int indexOrHash
    • attributes

      private short attributes
    • value

      Object value
    • next

      transient Slot next
    • orderedNext

      transient Slot orderedNext
  • Constructor Details

    • Slot

      Slot(Object name, int indexOrHash, int attributes)
    • Slot

      protected Slot(Slot oldSlot)
  • Method Details

    • isValueSlot

      boolean isValueSlot()
      Return true if this is a base-class "Slot". Sadly too much code breaks if we try to do this any other way.
    • isSetterSlot

      boolean isSetterSlot()
      Return true if this is a "setter slot" which, which we need to know for some legacy support.
    • readObject

      private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
      Throws:
      IOException
      ClassNotFoundException
    • setValue

      public final boolean setValue(Object value, Scriptable owner, Scriptable start)
    • setValue

      public boolean setValue(Object value, Scriptable owner, Scriptable start, boolean isThrow)
    • getValue

      public Object getValue(Scriptable start)
    • getAttributes

      int getAttributes()
    • setAttributes

      void setAttributes(int value)
    • getPropertyDescriptor

      ScriptableObject getPropertyDescriptor(Context cx, Scriptable scope)
    • throwNoSetterException

      protected void throwNoSetterException(Scriptable start, Object newValue)
    • getSetterFunction

      Function getSetterFunction(String name, Scriptable scope)
      Return a JavaScript function that represents the "setter". This is used by some legacy functionality. Return null if there is no setter.
    • getGetterFunction

      Function getGetterFunction(String name, Scriptable scope)
      Same for the "getter."