Index - All Packages - All Categories - All Classes

Class HistoryCrum

invariant: the parent's trace >= the child's trace

The subclasses should differentiate between the number
of children: 0, 1, or more. ORoots have 0 children and
always have a canopyCrum. HCrums for OCrums in the
body of the ent have one child if they are at the top
of an unshared subtreee, and more if they are at the top
of a shared subtree. HCrums with more than one child
almost always have a canopyCrum to represent the join
between the canopies of their multiple hchildren.

The change would make the updateH method return a
new crum, which the oCrums would install.

They don't do so now because I'm not sure if a crum with
no parents can appear in the middle of the ent. If so, then
the version compare operations would gag. Hmmm. The
change doesn't make any difference for that....

Package: Udanax-Gold
All Superclasses: Object Heaper
Immediate Subclasses: HBottomCrum HUpperCrum
Protocols: Object
Categories: Xanadu-Be-Ents

Class Methods

linkTimeNonInherited


nextHistoryCrumSequenceNumber

Shepherds use a sequence number for their hash. Return the next one
and increment. This should actually do spread the hashes.

Instance Methods

actualDelayedStoreBackfollow: finder with: recorder with: hCrumCache


actualDelayedStoreBackfollow: finder with: fossil with: recorder with: hCrumCache



Overridden by: HBottomCrum HUpperCrum

actualHashForEqual


actualStoreBackfollow: finder with: table with: hCrumCache


anyPasses: finder



Overridden by: HBottomCrum HUpperCrum

bertCrum

These objects must have a crum in the bert canopy.

Overridden by: HBottomCrum HUpperCrum

create



Overrides: Heaper

createRcvr: receiver



Overridden by: HBottomCrum HUpperCrum

delayedStoreBackfollow: finder with: recorder with: hCrumCache


delayedStoreBackfollow: finder with: fossil with: recorder with: hCrumCache


displayString



Overrides: Object

hCrums


hCut



Overridden by: HBottomCrum HUpperCrum

inspect



Overrides: Object

inspectCanopy


inspectMenuArray


inspectOrgls



Overridden by: HBottomCrum HUpperCrum

inTrace: trace

Return true if the receiver can backfollow to trace.

Overridden by: HBottomCrum HUpperCrum

isEmpty

Return true if their are no upward pointers. This is used
by OParts to determine if they can be forgotten.

Overridden by: HBottomCrum HUpperCrum

isEqual: other


mappingTo: trace with: initial

return the mapping into the domain space of the given trace

Overridden by: HBottomCrum HUpperCrum

oParents



Overridden by: HBottomCrum HUpperCrum

printOn: aStream



Overrides: Object
Overridden by: HBottomCrum

propagateBCrum: newBCrum

If bertCrum is leafward of newBCrum then change it and return true,
otherwise return false.

Overridden by: HBottomCrum HUpperCrum

ringDetectors: edition

Ring all the detectors north of me with the given Edition as argument

Overridden by: HBottomCrum HUpperCrum

sendSelfTo: xmtr



Overridden by: HBottomCrum HUpperCrum

showOn: oo


storeBackfollow: finder with: table with: hCrumCache




Index - All Packages - All Categories - All Classes