|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
|
+--org.abora.gold.java.AboraHeaper
|
+--org.abora.gold.xpp.basic.Heaper
|
+--org.abora.gold.collection.sets.ScruSet
|
+--org.abora.gold.collection.sets.MuSet
|
+--org.abora.gold.collection.sets.HashSet
|
+--org.abora.gold.collection.sets.ActualHashSet
| Field Summary | |
protected static IntegerVar |
AddOver
|
protected static Array |
AddTallys
|
protected static IntegerVar |
DeleteOver
|
protected static Array |
DeleteTallys
|
protected SharedPtrArray |
myHashEntries
|
protected UInt32Array |
myHashValues
|
protected int |
myTally
|
protected static IntegerVar |
NewSetCount
|
protected static IntegerVar |
SetKillCount
|
protected static IntegerVar |
StepperCount
|
protected static IntegerVar |
StepperOver
|
protected static Array |
StepperTally
|
protected static IntegerVar |
TestOver
|
protected static Array |
TestTallys
|
| Fields inherited from class org.abora.gold.xpp.basic.Heaper |
AllBlasts, BecomeMap, GarbageCount, InGC, InitializedClasses, InitializingClasses, LastMemory, NextClientRequestNumber, NotOneElementSignal, PackageTable, PromiseNameTable, StringHashSBoxes |
| Fields inherited from class org.abora.gold.java.AboraHeaper |
ActiveClubs, CurrentAuthor, CurrentBertCanopyCache, CurrentBertCrum, CurrentChunk, CurrentGrandMap, CurrentKeyMaster, CurrentPacker, CurrentSensorCanopyCache, CurrentServer, CurrentSession, CurrentSessions, CurrentTrace, InitialEditClub, InitialOwner, InitialReadClub, InitialSponsor, InsideTransactionFlag |
| Constructor Summary | |
ActualHashSet(int newTally,
SharedPtrArray entries)
|
|
ActualHashSet(int newTally,
UInt32Array hashValues,
SharedPtrArray entries)
|
|
ActualHashSet(Rcvr receiver)
|
|
| Method Summary | |
void |
aboutToWrite()
If my contents are shared, and I'm about to change them, make a copy of them. |
void |
actualAboutToWrite()
|
static java.lang.String |
arrayStats(Array array)
|
void |
checkSize(int byAmount)
|
static void |
cleanupGarbage()
Heaper cleanupGarbage |
int |
contentsHash()
Has the same relationship to contentsEqual that hashForEqual has to isEqual. I.e., if 'a->contentsEqual (b)', then 'a->contentsHash() == b->contentsHash()'. The same complex caveats apply as to the stability and portability of the hash values as apply for hashForEqual. |
ScruSet |
copy()
A new one whose initial state is my current state, but that doesn't track changes. |
IntegerVar |
count()
How many elements are currently in the set. |
static void |
countAdd(IntegerVar tally)
|
static void |
countDelete(IntegerVar tally)
|
static void |
countStepper(IntegerVar tally)
|
static void |
countTest(IntegerVar tally)
|
void |
destruct()
Classes should implement this message rather than a destructor. |
int |
distanceFromHome(int loc,
int home,
int modulus)
|
int |
entryTableSize()
|
int |
hashFind(Heaper item)
Starting at the item's preferred location and iterating (not recurring!!) around the set's storage while the slots we're examining are occupied... If the current slot's occupant is the target item, return a hit if the current occupant is closer to it's preferred location, return a miss. If we've gone all the way around, return a miss. |
void |
hashRemove(int from)
Remove the indicated item from the set. Iteratively (not recursively!!) move other items up until one is NULL or happier where it is. |
void |
hashStore(Heaper item,
UInt32Array values,
PtrArray entries)
Starting at the new item's preferred location and iterating (not recurring!!) around the set's storage while the slots we're examining are occupied. |
boolean |
hasMember(Heaper someone)
Is someone a member of the set now? |
static void |
initTimeNonInherited()
|
void |
introduce(Heaper anElement)
Add anElement to my members, but only if it isn't already a member. If it is already a member, BLAST |
boolean |
isEmpty()
Whether it currently has any elements |
static void |
linkTimeNonInherited()
|
static Heaper |
make()
|
static Heaper |
make(Heaper something)
|
static Heaper |
make(IntegerVar someSize)
someSize is a non-semantic hint about how big the set might get. |
void |
printInternals(java.io.PrintWriter oo)
This method is for regression testing. |
void |
receiveHashSet(Rcvr rcvr)
Make myHashEntries large enough that we won't grow. |
void |
remove(Heaper anElement)
Remove anElement from my members. |
void |
sendHashSet(Xmtr xmtr)
This currently doesn't take advantage of the optimizations in TableEntries. |
void |
sendSelfTo(Xmtr xmtr)
do nothing |
Stepper |
stepper()
Returns a stepper which will enumerate all the elements of the set in some unspecified order |
void |
store(Heaper anElement)
maintainance note: storeAll: has a copy of the code starting at self hashFind:... |
void |
storeAll(ScruSet other)
union equivalent |
Heaper |
theOne()
Iff I contain exactly one member, return it. |
void |
wipe(Heaper anElement)
make anElement no longer be one of my members. |
void |
wipeAll(ScruSet other)
Sort of minus. |
| Methods inherited from class org.abora.gold.collection.sets.HashSet |
asImmuSet, asMuSet, immuStepper |
| Methods inherited from class org.abora.gold.collection.sets.MuSet |
actualHashForEqual, fromStepper, isEqual, make, make, problems, restrictTo |
| Methods inherited from class org.abora.gold.collection.sets.ScruSet |
asArray, asOrderedCollection, contentsEqual, dox, inspect, intersects, isEqual, isSubsetOf, printOn, printOnWithSimpleSyntax, printOnWithSyntax |
| Methods inherited from class org.abora.gold.java.AboraHeaper |
asOop, basicInspect, displayString, error, hack, halt, knownBug, mightNotImplement, REQUIRES, shouldImplement, shouldNotImplement, stubbleForSubclassResponsibility, thingToDo, willNotImplement |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected UInt32Array myHashValues
protected SharedPtrArray myHashEntries
protected int myTally
protected static IntegerVar AddOver
protected static Array AddTallys
protected static IntegerVar DeleteOver
protected static Array DeleteTallys
protected static IntegerVar NewSetCount
protected static IntegerVar SetKillCount
protected static IntegerVar StepperCount
protected static IntegerVar StepperOver
protected static Array StepperTally
protected static IntegerVar TestOver
protected static Array TestTallys
| Constructor Detail |
public ActualHashSet(int newTally,
SharedPtrArray entries)
public ActualHashSet(int newTally,
UInt32Array hashValues,
SharedPtrArray entries)
public ActualHashSet(Rcvr receiver)
| Method Detail |
public int contentsHash()
ScruSet
contentsHash in class ScruSetpublic IntegerVar count()
ScruSet
count in class HashSetpublic boolean hasMember(Heaper someone)
ScruSet
hasMember in class HashSetpublic boolean isEmpty()
ScruSet
isEmpty in class HashSetpublic ScruSet copy()
ScruSet
copy in class HashSetpublic void destruct()
Heaper
destruct in class Heaperpublic Stepper stepper()
ScruSet
stepper in class HashSetpublic Heaper theOne()
ScruSet
theOne in class HashSetpublic void storeAll(ScruSet other)
storeAll in class MuSetpublic void wipeAll(ScruSet other)
wipeAll in class MuSetpublic void introduce(Heaper anElement)
MuSet
introduce in class HashSetpublic void remove(Heaper anElement)
MuSet
remove in class HashSetpublic void store(Heaper anElement)
store in class HashSetpublic void wipe(Heaper anElement)
HashSet
wipe in class HashSetpublic void aboutToWrite()
public void actualAboutToWrite()
public void checkSize(int byAmount)
public int distanceFromHome(int loc,
int home,
int modulus)
public int hashFind(Heaper item)
public void hashRemove(int from)
public void hashStore(Heaper item,
UInt32Array values,
PtrArray entries)
public int entryTableSize()
public void printInternals(java.io.PrintWriter oo)
printInternals in class HashSetpublic void receiveHashSet(Rcvr rcvr)
public void sendHashSet(Xmtr xmtr)
public void sendSelfTo(Xmtr xmtr)
Heaper
sendSelfTo in class Heaperpublic static void cleanupGarbage()
Heaper
public static void initTimeNonInherited()
public static void linkTimeNonInherited()
public static Heaper make()
public static Heaper make(Heaper something)
public static Heaper make(IntegerVar someSize)
MuSet
public static java.lang.String arrayStats(Array array)
public static void countAdd(IntegerVar tally)
public static void countDelete(IntegerVar tally)
public static void countStepper(IntegerVar tally)
public static void countTest(IntegerVar tally)
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||