|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
|
+--org.abora.white.xpp.basic.Heaper
|
+--org.abora.white.collection.tables.ScruTable
|
+--org.abora.white.collection.tables.MuTable
|
+--org.abora.white.collection.tables.IntegerTable
|
+--org.abora.white.collection.tables.OberIntegerTable
|
+--org.abora.white.collection.tables.ActualIntegerTable
The IntegerTable class is intended to provide an integer indexed table which is not constrained to be zero based.
| Field Summary | |
protected boolean |
domainIsSimple
|
protected int |
elemCount
|
protected PtrArray |
elements
|
protected int |
firstElem
|
protected int |
lastElem
|
protected IntegerValue |
start
|
protected int |
tally
|
| Fields inherited from class org.abora.white.collection.tables.OberIntegerTable |
myNextCOW |
| Constructor Summary | |
ActualIntegerTable()
The optional argument just hints at the number of elements to eventually be added. |
|
ActualIntegerTable(IntegerValue size)
The optional argument just hints at the number of elements to eventually be added. |
|
ActualIntegerTable(IntegerValue begin,
IntegerValue end)
Hint at the domain to be accessed (inclusive, exclusive). |
|
ActualIntegerTable(PtrArray array,
IntegerValue begin,
int count,
int first,
int last,
int aTally,
boolean simple)
|
|
ActualIntegerTable(Rcvr receiver)
|
|
| Method Summary | |
Heaper |
atIntStore(IntegerValue index,
Heaper value)
Unboxed version. |
Heaper |
atStore(Position key,
Heaper value)
Associate value with key, whether or not there is a previous association. |
void |
becomeCloneOnWrite(Heaper where)
|
IntegerRegion |
contigDomainStarting(int anIdx)
|
CoordinateSpace |
coordinateSpace()
The kind of elements used to index into the table are Positions of this coordinate space. |
ScruTable |
copy()
A new one whose initial state is my current state, but that doesn't track changes. |
IntegerValue |
count()
Return the number of domain elements, which is to say, the number of associations. |
void |
destroy()
|
void |
destruct()
|
XnRegion |
domain()
Return an XuRegion representing a snapshot of the current domain. |
PtrArray |
elementsArray()
return the elements array for rapid processing |
ScruTable |
emptySize(IntegerValue size)
Return an empty table just like the current one. |
int |
endOffset()
return the size of the elements array for rapid processing |
void |
enlargeAfter(IntegerValue toMinimum)
Enlarge the receiver to contain more slots filled with nil. |
void |
enlargeBefore(IntegerValue toMinimum)
Enlarge the receiver to contain more slots filled with nil. |
int |
fastHash()
|
Heaper |
fetch(Position key)
Return the range element at the domain position key. |
int |
firstElemAfter(int index)
This method returns the first table entry that is not NULL after index. |
IntegerRegion |
generateDomain()
|
IntegerValue |
highestIndex()
Given that the table is non-empty, 'intTab->highestIndex()' is equivalent to 'CAST(IntegerRegion,intTab->domain())->upperBound() -1'. |
boolean |
includesIntKey(IntegerValue aKey)
Unboxed version. |
boolean |
includesKey(Position aKey)
includesKey is used to test for the presence of a key->value pair in the table. |
Heaper |
intFetch(IntegerValue index)
Unboxed version. |
boolean |
intWipe(IntegerValue index)
Unboxed version. |
boolean |
isEmpty()
Is there anything in the table? 'table->isEmpty()' iff 'table->domain()->isEmpty()'. |
int |
lastElemBefore(int index)
This method returns the first table entry that is not NULL after index. |
IntegerValue |
lowestIndex()
Given that the table is non-empty, 'intTab->lowestIndex()' is equivalent to 'CAST(IntegerRegion,intTab->domain())->lowerBound()'. |
int |
maxElements()
return the size of the elements array for rapid processing |
IntegerRegion |
nullDomainStarting(int anIdx)
|
ScruTable |
offsetSubTableBetween(IntegerValue startIndex,
IntegerValue stopIndex,
IntegerValue firstIndex)
Copy the given range into a new IntegerTable. |
void |
printOn(java.io.PrintWriter aStream)
This should rarely be overridden. |
XnRegion |
runAt(Position anIdx)
Return the length of the run starting at position key. |
XnRegion |
runAtInt(IntegerValue anIdx)
Unboxed version. |
void |
sendSelfTo(Xmtr xmtr)
|
IntegerValue |
startIndex()
return the size of the elements array for rapid processing |
int |
startOffset()
return the size of the elements array for rapid processing |
TableStepper |
stepper(OrderSpec order)
ignore order spec for now |
ScruTable |
subTable(XnRegion reg)
Return a table which contains only the intersection of this table's domain and the domain specified by 'region'. |
ScruTable |
subTableBetween(IntegerValue startIndex,
IntegerValue stopIndex)
Hack for C++ overloading problem |
Heaper |
theOne()
Iff I contain exactly one range element, return it. |
boolean |
wipe(Position key)
Remove a key->value association from the table. |
| Methods inherited from class org.abora.white.collection.tables.OberIntegerTable |
aboutToWrite, getNextCOW, setNextCOW |
| Methods inherited from class org.abora.white.collection.tables.IntegerTable |
atIntIntroduce, atIntReplace, atIntroduce, atReplace, intRemove, make, make, make, make, remove |
| Methods inherited from class org.abora.white.collection.tables.MuTable |
actualHashForEqual, asImmuTable, asMuTable, introduceAll, introduceAll, introduceAll, isEqual, make, make, problems, removeAll, replaceAll, replaceAll, replaceAll, storeAll, storeAll, storeAll, wipeAll |
| Methods inherited from class org.abora.white.collection.tables.ScruTable |
backfollowFrom, contentsEqual, contentsHash, get, intGet, printOnWithSimpleSyntax, printOnWithSyntax, range, stepper, transformedBy |
| Methods inherited from class org.abora.white.xpp.basic.Heaper |
equals, hashForEqual, printContentsOn, toString |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
protected PtrArray elements
protected IntegerValue start
protected int elemCount
protected int firstElem
protected int lastElem
protected int tally
protected boolean domainIsSimple
| Constructor Detail |
public ActualIntegerTable()
public ActualIntegerTable(IntegerValue size)
public ActualIntegerTable(IntegerValue begin,
IntegerValue end)
public ActualIntegerTable(PtrArray array,
IntegerValue begin,
int count,
int first,
int last,
int aTally,
boolean simple)
public ActualIntegerTable(Rcvr receiver)
| Method Detail |
public int fastHash()
public boolean includesIntKey(IntegerValue aKey)
ScruTable
includesIntKey in class OberIntegerTablepublic boolean isEmpty()
ScruTable
isEmpty in class OberIntegerTable
public Heaper atIntStore(IntegerValue index,
Heaper value)
MuTable
atIntStore in class OberIntegerTablepublic CoordinateSpace coordinateSpace()
ScruTable
coordinateSpace in class OberIntegerTablepublic IntegerValue count()
ScruTable
count in class OberIntegerTablepublic XnRegion domain()
ScruTable
domain in class OberIntegerTablepublic IntegerValue highestIndex()
OberIntegerTable
highestIndex in class OberIntegerTablepublic Heaper intFetch(IntegerValue index)
ScruTable
intFetch in class OberIntegerTablepublic boolean intWipe(IntegerValue index)
MuTable
intWipe in class OberIntegerTablepublic IntegerValue lowestIndex()
OberIntegerTable
lowestIndex in class OberIntegerTablepublic ScruTable copy()
ScruTable
copy in class OberIntegerTablepublic void destroy()
destroy in class Heaperpublic ScruTable emptySize(IntegerValue size)
ScruTable
emptySize in class OberIntegerTable
public ScruTable offsetSubTableBetween(IntegerValue startIndex,
IntegerValue stopIndex,
IntegerValue firstIndex)
offsetSubTableBetween in class OberIntegerTablepublic ScruTable subTable(XnRegion reg)
ScruTable
subTable in class OberIntegerTable
public ScruTable subTableBetween(IntegerValue startIndex,
IntegerValue stopIndex)
subTableBetween in class OberIntegerTablepublic XnRegion runAtInt(IntegerValue anIdx)
ScruTable
runAtInt in class OberIntegerTablepublic void printOn(java.io.PrintWriter aStream)
Heaper
printOn in class ScruTablepublic TableStepper stepper(OrderSpec order)
stepper in class OberIntegerTablepublic Heaper theOne()
ScruTable
theOne in class ScruTablepublic IntegerRegion contigDomainStarting(int anIdx)
public PtrArray elementsArray()
elementsArray in class OberIntegerTablepublic int endOffset()
endOffset in class OberIntegerTablepublic void enlargeAfter(IntegerValue toMinimum)
public void enlargeBefore(IntegerValue toMinimum)
public int firstElemAfter(int index)
public IntegerRegion generateDomain()
public int lastElemBefore(int index)
public int maxElements()
public IntegerRegion nullDomainStarting(int anIdx)
public IntegerValue startIndex()
startIndex in class OberIntegerTablepublic int startOffset()
startOffset in class OberIntegerTablepublic void destruct()
destruct in class Heaperpublic void becomeCloneOnWrite(Heaper where)
becomeCloneOnWrite in class OberIntegerTable
public Heaper atStore(Position key,
Heaper value)
MuTable
atStore in class OberIntegerTablepublic Heaper fetch(Position key)
ScruTable
fetch in class OberIntegerTablepublic boolean includesKey(Position aKey)
ScruTable
includesKey in class OberIntegerTablepublic XnRegion runAt(Position anIdx)
ScruTable
runAt in class OberIntegerTablepublic boolean wipe(Position key)
MuTable
wipe in class OberIntegerTablepublic void sendSelfTo(Xmtr xmtr)
sendSelfTo in class MuTable
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||