<> <> DIRECTORY CHNameP2V0 USING [DomainName, maxDomainLength, maxObjectLength, maxOrganizationLength, Name], Rope USING [ROPE]; XNSCHName: CEDAR DEFINITIONS ~ { ROPE: TYPE ~ Rope.ROPE; Name: TYPE ~ CHNameP2V0.Name; DomainName: TYPE ~ CHNameP2V0.DomainName; maxDomainLength: CARD16 ~ CHNameP2V0.maxDomainLength; maxObjectLength: CARD16 ~ CHNameP2V0.maxObjectLength; maxOrganizationLength: CARD16 ~ CHNameP2V0.maxOrganizationLength; FieldTooLong: SIGNAL [which: CARDINAL]; <<1 => object, 2 => domain, 3 => organization>> <<(Note this is the order in which fields appear in a rope, it's the REVERSE of their order in the record).>> <> <> <<>> NameFromRope: PROC [rope: ROPE, defaultDomain: ROPE _ NIL, defaultOrganization: ROPE _ NIL] RETURNS [name: Name]; <> < ["Xerox", "PARC", "Demers"]>> <> RopeFromName: PROC [name: Name] RETURNS [rope: ROPE]; DomainNameFromRope: PROC [rope: ROPE, defaultDomain: ROPE _ NIL, defaultOrganization: ROPE _ NIL] RETURNS [domainName: DomainName]; <> < ["Xerox", "PARC"].>> <> RopeFromDomainName: PROC [domainName: DomainName] RETURNS [rope: ROPE]; }.