DIRECTORY IO, Rope, VersionMap2; VersionMap2Implr: CEDAR DEFINITIONS = {OPEN VersionMap2; FillinDefaults: PROC [functional: BOOL, mutability: Mutability, classRep: MapClassRep] RETURNS [MapClass]; AlwaysFunctional: PROC [map: Map] RETURNS [BOOL]; NeverFunctional: PROC [map: Map] RETURNS [BOOL]; AlwaysConstant: PROC [map: Map] RETURNS [Mutability]; AlwaysReadonly: PROC [map: Map] RETURNS [Mutability]; AlwaysWritable: PROC [map: Map] RETURNS [Mutability]; HasByScan: PROC [map: Map, elt: VersionTuple] RETURNS [BOOL]; ScanProc: TYPE ~ PROC [map: Map, Consume: TupleConsumer, inOrder: BOOL, pfml: PatternFactoredMapList] RETURNS [MaybeTuple]; ScanByGenerate: ScanProc; SortScan: PROC [map: Map, Scan: ScanProc, Consume: TupleConsumer, pfml: PatternFactoredMapList] RETURNS [MaybeTuple]; FilterScan: PROC [map: Map, Scan: ScanProc, Consume: TupleConsumer, inOrder: BOOL, pfml: PatternFactoredMapList] RETURNS [MaybeTuple]; CantScan: ScanProc; GenerateByScan: PROC [map: Map, inOrder: BOOL, pfml: PatternFactoredMapList] RETURNS [Generator]; CantGenerate: PROC [map: Map, inOrder: BOOL, pfml: PatternFactoredMapList] RETURNS [Generator]; SizeByScan: PROC [map: Map, limit: INT] RETURNS [INT]; FullSize: PROC [map: Map, limit: INT] RETURNS [INT]; DefaultPatternFactorMap: PROC [map: Map] RETURNS [PatternFactoredMap]; CantAddTuple: PROC [map: Map, t: VersionTuple, if: IfHads] RETURNS [had: Hads]; AddTupleBySingleton: PROC [map: Map, t: VersionTuple, if: IfHads] RETURNS [had: Hads]; CantAddMap: PROC [map, other: Map, if: IfHads] RETURNS [some: HadSets]; AddMapByTuples: PROC [map, other: Map, if: IfHads] RETURNS [some: HadSets]; CantRemTuple: PROC [map: Map, t: VersionTuple] RETURNS [had: Hads]; RemTupleBySingleton: PROC [map: Map, t: VersionTuple] RETURNS [had: Hads]; CantRemMap: PROC [map, other: Map] RETURNS [some: HadSets]; RemMapByTuples: PROC [map, other: Map] RETURNS [some: HadSets]; DefaultNegate: PROC [map: Map] RETURNS [Map]; DefaultIsNegation: PROC [map: Map] RETURNS [MaybeMap]; DefaultIntersect: PROC [map, other: Map] RETURNS [Map]; DefaultIsIntersection: PROC [map: Map] RETURNS [Maybe2Maps]; DefaultUnion: PROC [map, other: Map, test: UnionTest, ordered: BOOL] RETURNS [Map]; DefaultIsUnion: PROC [map: Map] RETURNS [Maybe2Maps]; DefaultDifference: PROC [map, other: Map] RETURNS [Map]; DefaultIsDifference: PROC [map: Map] RETURNS [Maybe2Maps]; DefaultSymmetricDifference: PROC [map, other: Map] RETURNS [Map]; DefaultIsSymmetricDifference: PROC [map: Map] RETURNS [Maybe2Maps]; NamePatternAcceptsAll: PROC [pattern: Name, minDirBoundaries: NAT] RETURNS [BOOL]; CountAvailable: PROC [gen: Generator, limit: INT _ INT.LAST] RETURNS [INT]; OcFromHad: PROC [had: Hads] RETURNS [OldCase] ~ INLINE {RETURN [ocFromHad[had[created]][had[stamp]]]}; ocFromHad: ARRAY --created:--Had OF ARRAY --stamp:--Had OF OldCase = [ same: [same: same, different: stampDifferent, none: new], different: [same: createdDifferent, different: bothDifferent, none: new], none: ALL[new] ]; Cant: PROC [info: REF ANY, fmt: ROPE, v1, v2, v3, v4, v5: IO.Value _ [null[]]]; DullClose: PROC [Generator]; }. v VersionMap2Implr.Mesa Copyright Σ 1990 by Xerox Corporation. All rights reserved. Last tweaked by Mike Spreitzer on August 16, 1990 12:08:59 pm PDT Stuff useful to implementors of MapClasses. Returns TRUE iff the given pattern matches every tuple whose name has at least the given number of internal directory boundaries. Raises the error that means unimplemented. Κό– "cedar" style•NewlineDelimiter ™codešœ™K™