EmbeddedSlotMap (rhino 1.7.14 API)

org.mozilla.javascript

## Class EmbeddedSlotMap

- java.lang.Object
- - org.mozilla.javascript.EmbeddedSlotMap

- All Implemented Interfaces:
    java.lang.Iterable<Slot>, SlotMap

      public class EmbeddedSlotMap
      extends java.lang.Object
      implements SlotMap

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EmbeddedSlotMap()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(Slot newSlot)` Insert a new slot to the map.
    `boolean` | `isEmpty()` Return whether the map is empty.
    `java.util.Iterator<Slot>` | `iterator()`
    `Slot` | `modify(java.lang.Object key, int index, int attributes)` Locate the slot with given name or index, and create a new one if necessary.
    `Slot` | `query(java.lang.Object key, int index)` Locate the slot with the given name or index.
    `void` | `remove(java.lang.Object key, int index)` Remove the slot at either "key" or "index".
    `void` | `replace(Slot oldSlot, Slot newSlot)` Replace "slot" with a new slot.
    `int` | `size()` Return the size of the map.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### EmbeddedSlotMap

          public EmbeddedSlotMap()

  - ### Method Detail

    - #### size

          public int size()

      Description copied from interface: `SlotMap`
      Return the size of the map.
      Specified by:
        `size` in interface `SlotMap`

    - #### isEmpty

          public boolean isEmpty()

      Description copied from interface: `SlotMap`
      Return whether the map is empty.
      Specified by:
        `isEmpty` in interface `SlotMap`

    - #### iterator

          public java.util.Iterator<Slot> iterator()

      Specified by:
        `iterator` in interface `java.lang.Iterable<Slot>`

    - #### query

          public Slot query(java.lang.Object key,
                            int index)

      Locate the slot with the given name or index.
      Specified by:
        `query` in interface `SlotMap`
      Parameters:
        `key` - The key for the slot, which should be a String or a Symbol.
        `index` - if key is zero, then this will be used as the key instead.
      Returns:
        either the Slot that matched the key and index, or null

    - #### modify

          public Slot modify(java.lang.Object key,
                             int index,
                             int attributes)

      Locate the slot with given name or index, and create a new one if necessary.
      Specified by:
        `modify` in interface `SlotMap`
      Parameters:
        `key` - either a String or a Symbol object that identifies the property
        `index` - index or 0 if slot holds property name.
        `attributes` - the attributes to be set on the slot if a new slot is created. Existing slots will not be modified.
      Returns:
        a Slot, which will be created anew if no such slot exists.

    - #### replace

          public void replace(Slot oldSlot,
                              Slot newSlot)

      Description copied from interface: `SlotMap`
      Replace "slot" with a new slot. This is used to change slot types.
      Specified by:
        `replace` in interface `SlotMap`

    - #### add

          public void add(Slot newSlot)

      Description copied from interface: `SlotMap`
      Insert a new slot to the map. Both "name" and "indexOrHash" must be populated. Note that ScriptableObject generally adds slots via the "modify" method.
      Specified by:
        `add` in interface `SlotMap`

    - #### remove

          public void remove(java.lang.Object key,
                             int index)

      Description copied from interface: `SlotMap`
      Remove the slot at either "key" or "index".
      Specified by:
        `remove` in interface `SlotMap`
      Parameters:
        `key` - The key for the slot, which should be a String or a Symbol.
        `index` - if key is zero, then this will be used as the key instead.