Package org.eclipse.emf.common.util
Class SegmentSequence.StringArrayPool.SegmentsAndSegmentAccessUnit
java.lang.Object
org.eclipse.emf.common.util.Pool.AccessUnit<String[]>
org.eclipse.emf.common.util.SegmentSequence.StringArrayPool.AccessUnitBase
org.eclipse.emf.common.util.SegmentSequence.StringArrayPool.SegmentsAndSegmentAccessUnit
- Enclosing class:
SegmentSequence.StringArrayPool
protected static class SegmentSequence.StringArrayPool.SegmentsAndSegmentAccessUnit
extends SegmentSequence.StringArrayPool.AccessUnitBase
An access units for accessing segments and one additional segment.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanWhether that additional segment needs interning.protected StringThe one additional segment.protected intThe number of those segments to include.protected String[]The segments being accessed.Fields inherited from class org.eclipse.emf.common.util.SegmentSequence.StringArrayPool.AccessUnitBase
stringAccessUnit, substringAccessUnitFields inherited from class org.eclipse.emf.common.util.Pool.AccessUnit
createdEntry, entries, hashCode, matchingIndex, next, queue, values, valuesLength -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedSegmentsAndSegmentAccessUnit(SegmentSequence.StringArrayPool.SegmentsAndSegmentAccessUnit.Queue queue) Creates an instance managed by the given queue. -
Method Summary
Modifier and TypeMethodDescriptionString[]Gets the value that should be added to the pool.protected booleanUsed to determine whether the given value from the pool is equal to the value being accessed.voidreset(boolean isExclusive) Prepare the access unit for reuse.protected voidCaches the parameters and computes the hash code.Methods inherited from class org.eclipse.emf.common.util.SegmentSequence.StringArrayPool.AccessUnitBase
getValue, internString, internString, setArbitraryValue, setValueMethods inherited from class org.eclipse.emf.common.util.Pool.AccessUnit
add, getEntry, match, rematches
-
Field Details
-
segments
The segments being accessed. -
segmentCount
protected int segmentCountThe number of those segments to include. -
segment
The one additional segment. -
needsInterning
protected boolean needsInterningWhether that additional segment needs interning.
-
-
Constructor Details
-
SegmentsAndSegmentAccessUnit
protected SegmentsAndSegmentAccessUnit(SegmentSequence.StringArrayPool.SegmentsAndSegmentAccessUnit.Queue queue) Creates an instance managed by the given queue.
-
-
Method Details
-
setValue
protected void setValue(String[] segments, int segmentCount, String segment, boolean needsInterning) Caches the parameters and computes the hash code. -
matches
Description copied from class:Pool.AccessUnitUsed to determine whether the given value from the pool is equal to the value being accessed. The default implementation usesObject.equals(Object).- Overrides:
matchesin classSegmentSequence.StringArrayPool.AccessUnitBase
-
getInternalizedValue
Description copied from class:Pool.AccessUnitGets the value that should be added to the pool. This can be specialized to internalized the value, e.g., to make a copy that uses minimal storage or is read only.- Overrides:
getInternalizedValuein classPool.AccessUnit<String[]>
-
reset
public void reset(boolean isExclusive) Description copied from class:Pool.AccessUnitPrepare the access unit for reuse. In particular remove the hard references to each element in both thePool.AccessUnit.valuesandPool.AccessUnit.entriesand then reset thePool.AccessUnit.valuesLengthto 0- Overrides:
resetin classPool.AccessUnit<String[]>
-