<> <> <> <> <<>> <> <> <> DIRECTORY BcdDefs USING[VersionStamp], ConvertUnsafe USING[SubString], PrincOps USING[EPRange, MaxNGfi], RCMap USING[Index], Rope USING[ROPE], RTSymbolDefs USING[SymbolTableBase, SymbolRecordIndex, SymbolIdIndex, SymbolContextIndex, SymbolIndex, SymbolNameIndex, SymbolConstructorIndex, SymbolTableHandle, SymbolModuleIndex, ExtensionClass, TreeLink, BodyIndex, BlockContextLevel, CallableBodyIndex], SafeStorage USING[Type]; RTSymbolOps: DEFINITIONS = BEGIN OPEN Rope, RTSymbolDefs; <> <<>> EnumerateRecordIseis: PROC [ stb: SymbolTableBase, rsei: SymbolRecordIndex, p: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [stop: BOOL], level: CARDINAL _ 0] RETURNS [stopped: BOOL]; <> <> <> <> <> <> <> <> <> EnumerateCtxIseis: PROC [ stb: SymbolTableBase, ctx: SymbolContextIndex, proc: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [stop: BOOL], reallyComplete: BOOL _ FALSE] RETURNS [stopped: BOOL]; <> <> <> <<"reallyComplete" is used to circumvent an inadequacy in the symbol table's>> <> <> <> CountComponents: PROC [stb: SymbolTableBase, rsei: SymbolRecordIndex] RETURNS [n: NAT]; IsRC: PROC [stb: SymbolTableBase, seIndex: SymbolIndex, checkCommon: BOOL _ TRUE] RETURNS [BOOL]; IsUnion: PROC [stb: SymbolTableBase, seIndex: SymbolIndex] RETURNS [BOOL]; IsSequence: PROC [stb: SymbolTableBase, seIndex: SymbolIndex] RETURNS [BOOL]; PeelAllButLast: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [SymbolIdIndex]; <> <> SETypeXferMode: PROC [stb: SymbolTableBase, sei: SymbolIndex] RETURNS [Xfm]; Xfm: TYPE = {none, proc, signalOrError, other}; SETagIDP: PROC [stb: SymbolTableBase, sei: SymbolIndex] RETURNS [BOOL]; <> SEUnderType: PROC [stb: SymbolTableBase, sei: SymbolIndex] RETURNS [SymbolConstructorIndex]; ISEType: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [SymbolIndex]; BodyType: PROC [stb: SymbolTableBase, bti: BodyIndex] RETURNS [SymbolIndex]; CallableBodyEntryIndex: PROC [stb: SymbolTableBase, cbti: CallableBodyIndex] RETURNS [[0..PrincOps.EPRange*PrincOps.MaxNGfi)]; SEBitsForType: PROC [stb: SymbolTableBase, sei: SymbolIndex] RETURNS [INT]; IDCardinalValue: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [CARDINAL]; IDCardinalInfo: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [CARDINAL]; BodyLevel: PROC [stb: SymbolTableBase, bti: BodyIndex] RETURNS [BlockContextLevel]; ParentBody: PROC [stb: SymbolTableBase, bti: BodyIndex] RETURNS [BodyIndex]; BodyName: PROC [stb: SymbolTableBase, cbti: CallableBodyIndex] RETURNS [SymbolNameIndex]; RootBodyType: PROC [stb: SymbolTableBase] RETURNS [SymbolIndex]; ISEInfo: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [SymbolIndex]; ISECtx: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [SymbolContextIndex]; ISEFindExtension: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [ExtensionClass, TreeLink]; STBDirectoryCtx: PROC [stb: SymbolTableBase] RETURNS [SymbolContextIndex]; STBVersion: PROC [stb: SymbolTableBase] RETURNS [BcdDefs.VersionStamp]; STBSourceVersion: PROC [stb: SymbolTableBase] RETURNS [BcdDefs.VersionStamp]; ISEName: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [SymbolNameIndex]; ISEPublic: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [BOOL]; ISEExtended: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [BOOL]; ISEConstant: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [BOOL]; ISEImmutable: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [BOOL]; IsTypeSEI: PROC [sei: SymbolIndex] RETURNS [BOOL]; IsTransferConstructorSEI: PROC [stb: SymbolTableBase, sei: SymbolConstructorIndex] RETURNS [BOOL]; RSEVariant: PROC [stb: SymbolTableBase, rsei: SymbolRecordIndex] RETURNS [BOOL]; STBDirectoryCTX: PROC [stb: SymbolTableBase] RETURNS [SymbolContextIndex]; FirstCtxSe: PROC [stb: SymbolTableBase, ctx: SymbolContextIndex] RETURNS [SymbolIdIndex]; NextSe: PROC [stb: SymbolTableBase, isei: SymbolIdIndex] RETURNS [SymbolIdIndex]; NullISEI: PROC [isei: SymbolIdIndex] RETURNS [BOOL]; NullSEI: PROC [sei: SymbolIndex] RETURNS [BOOL]; NullBTI: PROC [bti: BodyIndex] RETURNS [BOOL]; CallableBTI: PROC [stb: SymbolTableBase, bti: BodyIndex] RETURNS [BOOL]; IsRootBTI: PROC [bti: BodyIndex] RETURNS [BOOL]; NullName: PROC [hti: SymbolNameIndex] RETURNS [BOOL]; NullCtx: PROC [ctx: SymbolContextIndex] RETURNS [BOOL]; NullStb: PROC [stb: SymbolTableBase] RETURNS [BOOL]; NullSth: PROC [sth: SymbolTableHandle] RETURNS [BOOL]; NullModuleIndex: PROC [mdi: SymbolModuleIndex] RETURNS [BOOL]; SubStringForName: PROC [stb: SymbolTableBase, hti: SymbolNameIndex] RETURNS [ConvertUnsafe.SubString]; STBToModuleName: PROC [stb: SymbolTableBase] RETURNS [ROPE]; <> <<>> AcquireType: PROC [stb: SymbolTableBase, seIndex: SymbolIndex, canonicalize: BOOL _ FALSE, rcmi: RCMap.Index _ LAST[RCMap.Index]] RETURNS [type: SafeStorage.Type]; <> AcquireSequenceType: PROC [stb: SymbolTableBase, sei: SymbolIndex, recordSTB: SymbolTableBase, recordSEIndex: SymbolRecordIndex] RETURNS [type: SafeStorage.Type]; <> AcquireRope: PROC [stb: SymbolTableBase, hti: SymbolNameIndex] RETURNS [ROPE]; AcquireAtom: PROC [stb: SymbolTableBase, hti: SymbolNameIndex] RETURNS [atom: ATOM]; END.