Module org.htmlunit.corejs
Package org.htmlunit.corejs.javascript
Class EmbeddedSlotMap<T extends PropHolder<T>>
java.lang.Object
org.htmlunit.corejs.javascript.EmbeddedSlotMap<T>
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.htmlunit.corejs.javascript.SlotMap
SlotMap.SlotComputer<S extends Slot<T>,T extends PropHolder<T>> -
Constructor Summary
ConstructorsModifierConstructorDescriptionEmbeddedSlotMap(int capacity) protectedEmbeddedSlotMap(EmbeddedSlotMap<T> other) -
Method Summary
Modifier and TypeMethodDescriptionvoidadd(SlotMapOwner<T> owner, Slot<T> newSlot) Insert a new slot to the map.compute(SlotMapOwner<T> owner, CompoundOperationMap<T> compoundOp, Object key, int index, SlotMap.SlotComputer<S, T> c) copyMap()booleanisEmpty()Return whether the map is empty.iterator()modify(SlotMapOwner<T> owner, Object key, int index, int attributes) Locate the slot with given name or index, and create a new one if necessary.protected voidpromoteMap(SlotMapOwner<T> owner, Slot<T> newSlot) Locate the slot with the given name or index.intsize()Return the size of the map.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface org.htmlunit.corejs.javascript.SlotMap
compute, dirtySize, startCompoundOp
-
Constructor Details
-
EmbeddedSlotMap
public EmbeddedSlotMap() -
EmbeddedSlotMap
public EmbeddedSlotMap(int capacity) -
EmbeddedSlotMap
-
-
Method Details
-
size
public int size()Description copied from interface:SlotMapReturn the size of the map.- Specified by:
sizein interfaceSlotMap<T extends PropHolder<T>>
-
isEmpty
public boolean isEmpty()Description copied from interface:SlotMapReturn whether the map is empty.- Specified by:
isEmptyin interfaceSlotMap<T extends PropHolder<T>>
-
iterator
- Specified by:
iteratorin interfaceIterable<T extends PropHolder<T>>
-
query
Locate the slot with the given name or index.- Specified by:
queryin interfaceSlotMap<T extends PropHolder<T>>- 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
Locate the slot with given name or index, and create a new one if necessary.- Specified by:
modifyin interfaceSlotMap<T extends PropHolder<T>>- Parameters:
key- either a String or a Symbol object that identifies the propertyindex- 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.
-
promoteMap
-
compute
public <S extends Slot<T>> S compute(SlotMapOwner<T> owner, CompoundOperationMap<T> compoundOp, Object key, int index, SlotMap.SlotComputer<S, T> c) - Specified by:
computein interfaceSlotMap<T extends PropHolder<T>>
-
add
Description copied from interface:SlotMapInsert 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:
addin interfaceSlotMap<T extends PropHolder<T>>
-
copyMap
- Specified by:
copyMapin interfaceSlotMap<T extends PropHolder<T>>
-