<> <> <> <> DIRECTORY CedarBaseType USING [TypeIndex], CedarBaseValue USING [Value], SaffronGenericDef USING [idNode], IO USING [STREAM]; CedarBaseContext: CEDAR DEFINITIONS ~ { idNode: TYPE ~ SaffronGenericDef.idNode; TypeIndex: TYPE ~ CedarBaseType.TypeIndex; Value: TYPE ~ CedarBaseValue.Value; <> <> LocalContext: TYPE ~ REF LocalContextRep; LocalContextRep: TYPE; PrintLocalContext: PROC [LocalContext, IO.STREAM] RETURNS [BOOLEAN]; XLocalContext: PROC [LocalContext] RETURNS [LocalContext]; <> CreateLocalContext: PROC [] RETURNS [LocalContext]; LocalLookup: PROC [LocalContext, idNode] RETURNS [Descriptor]; <> InsertContext: PROC [LocalContext, idNode, Descriptor] RETURNS [LocalContext, BOOLEAN]; <> ReplaceContext: PROC [LocalContext, idNode, Descriptor] RETURNS [LocalContext, BOOLEAN]; <> <> <> RibContext: TYPE ~ REF RibContextRep; RibContextRep: TYPE; CreateRibContext: PROC [] RETURNS [RibContext]; RibLookup: PROC [RibContext, idNode] RETURNS [Descriptor]; Lookup: PROC [RibContext, LocalContext, idNode] RETURNS [Descriptor]; <> ExtendRibContext: PROC [RibContext, LocalContext] RETURNS [RibContext]; <> <> <> Descriptor: TYPE ~ REF DescriptorRep; DescriptorRep: TYPE; BuildValueDescriptor: PROC [Value] RETURNS [Descriptor]; GetValue: PROC[Descriptor] RETURNS [Value]; IsValueDescriptor: PROC [Descriptor] RETURNS [BOOLEAN]; <> BuildSuspendedDescriptor: PROC [REF] RETURNS [Descriptor]; IsSuspendedDescriptor: PROC [Descriptor] RETURNS [BOOLEAN]; DescriptorGetDecl: PROC [Descriptor] RETURNS [REF]; <> BuildInaccessibleDescriptor: PROC [] RETURNS [Descriptor]; IsInaccessibleDescriptor: PROC [Descriptor] RETURNS [BOOLEAN]; <> BuildTypeDescriptor: PROC [TypeIndex] RETURNS [Descriptor]; GetType: PROC [Descriptor] RETURNS [TypeIndex]; IsTypeDescriptor: PROC [Descriptor] RETURNS [BOOLEAN]; <> BuildUndefinedDescriptor: PROC [] RETURNS [Descriptor]; IsUndefinedDescriptor: PROC [Descriptor] RETURNS [BOOLEAN]; <> <> ContextTree: TYPE ~ REF ContextTreeRep; ContextTreeRep: TYPE; BuildContextTree: PROC [RibContext, ContextTreeList] RETURNS [ContextTree]; <> ContextTreeList: TYPE ~ REF ContextTreeListRep; ContextTreeListRep: TYPE; BuildEmptyContextTreeList: PROC [] RETURNS [ContextTreeList]; }...