org.abora.gold.collection.grand
Class GrandDataPage
java.lang.Object
|
+--org.abora.gold.java.AboraHeaper
|
+--org.abora.gold.xpp.basic.Heaper
|
+--org.abora.gold.snarf.Abraham
|
+--org.abora.gold.collection.grand.GrandDataPage
- public class GrandDataPage
- extends Abraham
GrandDataPage behaves as a small hash table.
Linear hashing and the GrandOverflow structure are used to resolve collisions.
The shift argument to the various methods is the number of pages in the
parent node to indicate how many low bits of the hash are ignored.
| 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 |
| Methods inherited from class org.abora.gold.snarf.Abraham |
actualHashForEqual, becomeStub, cleanupGarbage, destroy, destruct, diskUpdate, dismantleStatistics, fetchInfo, fetchShepherd, flockInfo, forget, getInfo, getShepherdStubCategory, initTimeNonInherited, isConstructed, isDestructed, isEqual, isKindOf, isPurgeable, isShepherd, isStub, isUnlocked, linkTimeNonInherited, newShepherd, remember, restartAbraham, restartAbraham, returnToken, staticTimeNonInherited, token |
| Methods inherited from class org.abora.gold.xpp.basic.Heaper |
abstractDeclarationFor, abstractTypeFor, addMethodAttributeToInOf, addPackage, addPackageCategory, allClientProtocolOn, argumentTypesFor, arrow, blast, blast, BLAST, cachePromiseNameTable, cachePromiseNameTableIn, canYouBecome, cast, cleanPromiseClasses, clientClassesDo, clientFunctionsOn, clientMethodsOn, clientProtocol, clientProtocolDo, clientProtocolOn, clientProtocolOn, collectibleClasses, compare, compileClientSubclasses, compileConstantPromiseMethods, compileCreateFromRcvr, compileEQ, compileGeneratedClassMethod, compileGeneratedMethod, compileHook, compilePromise, compilePromiseDefaultMethods, compilePromiseFluidDeclarations, compilePromiseHandlers, compilePromiseMethods, compileRequestCreateMsgInArguments, compileRequestEvaluateMsgInReturningArguments, compileRPCSpecialistEvaluateMsgForReturningArguments, compileSendSelfTo, compileSendSelfToSendHook, compileStubbleMethods, compileSubclassStubbleMethods, computeMangle, computePreorder, constantTypeValue, convert, convertCopyDeclarations, convertDeferredDeclarations, convertProxyDeclarations, convertSubclassCopyDeclarations, convertSubclassDeferredDeclarations, convertSubclassProxyDeclarations, copyReferencesToType, create, create, create, create, create, create, create, create, create, create, createRequestClassArguments, definesProxyMethods, delete, deref, destructor, enum, enumFlags, equals, exportName, fetchAttribute, fetchPackage, fetchSuperCategory, fileOutClientProtocol, findCategory, findSenderAndReceiverMethods, findTailInto, flushPromiseNameTable, foo, freezeClientClasses, freezeClientProtocol, freezeStProtocol, frozenClasses, garbageCollect, garbageCollectFrom, gcOpportunity, gcOpportunity, generatedCategory, generatePromiseNames, getCategory, getOrMakePackage, getSuperCategory, handlerSignaturesFrom, hash, hashForEqual, hasProxyMethods, info_clientClasses, info_clientSideClasses, info_promiseClasses, info_stProtocol, inGC, initializedClasses, initializingClasses, initPackages, initStringHashSBoxes, instanceSize, IntegerVar, isByProxy, isConstructed, isDestructed, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, make, makeClassTable, makeFillTable, makeRequestTable, mangle, markChildren, markCount, markInstances, mayBecome, mayBecomeAnySubclassOf, new1, newX, nonCopyVariables, notWorking, pack, packageClasses, packagingCategory, parseExportName, passe, pointerToStaticMember, pointerToStaticMember, pointerToVirtualMember, preorderMax, preorderNumber, PROBLEM, problems, promiseClass, promiseDefaultValue, promiseName, promiseNameTable, promiseToAbstract, registerPackageCategory, removeGeneratedCode, removeStubbleMethods, removeSubclassGeneratedCode, removeSubclassStubbleMethods, requestProcedure, requestProceduresFrom, returnTypeFor, rootName, scheduleTermination, sendProxyTo, serverNameFor, setGC, signal, signals, smalltalkSelector, stClientProtocol, stubbleSelectorTokenReturnsArguments, subclassNonCopyVariables, takeOop, togglePromiseName, togglePromiseOfParse, unimplemented, unmangle, verifyFreeze, wipeStubble |
| Methods inherited from class org.abora.gold.java.AboraHeaper |
asOop, basicInspect, displayString, error, hack, halt, inspect, 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 |
myLowHashBits
protected int myLowHashBits
numEntries
protected int numEntries
entries
protected PtrArray entries
overflow
protected GrandOverflow overflow
myGroup
protected GrandNode myGroup
GrandDataPage
public GrandDataPage(int nEntries,
GrandNode node,
int lowHashBits)
GrandDataPage
public GrandDataPage(Rcvr receiver)
fetch
public Heaper fetch(Heaper toMatch,
int aHash,
int shift)
store
public void store(GrandEntry newEntry,
int shift)
wipe
public void wipe(Heaper toMatch,
int aHash,
int shift)
repack
public void repack(int shift)
- This repacks the entry table after a wipe to keep the table consistent with
makeDouble
public GrandDataPage makeDouble(int newNumPages)
- Create a new page with all entries of current page that have a
loadFactor
public double loadFactor()
lowHashBits
public int lowHashBits()
printOn
public void printOn(java.io.PrintWriter aStream)
- Overrides:
printOn in class Heaper
dismantle
public void dismantle()
- Description copied from class:
Abraham
- Disconnect me from the universe and throw me off the disk.
For GC safety, we keep a strongptr to ourself -- is this still necessary?
- Overrides:
dismantle in class Abraham
contentsHash
public int contentsHash()
- Description copied from class:
Abraham
- A hash of the contents of this flock
- Overrides:
contentsHash in class Abraham
isEmpty
public boolean isEmpty()
entryAt
public GrandEntry entryAt(IntegerVar idx)
entryCount
public IntegerVar entryCount()
inspectPieces
public static void inspectPieces()
sendSelfTo
public void sendSelfTo(Xmtr xmtr)
- Description copied from class:
Heaper
- do nothing
- Overrides:
sendSelfTo in class Abraham
make
public static Heaper make(int nEntries,
GrandNode node,
int lowHashBits)
Translation - Copyright © 2003 David G Jones. All Rights Reserved.
Original Udanax-Gold - Copyright © 1979-1999 Udanax.com. All rights reserved.