DIRECTORY NodeReader USING [Ref], Rope USING [ROPE], Rosary USING [ROSARY], Tioga USING [Node, Looks, CharSet, PropList], TiogaAccess USING [TiogaChar]; TiogaAccessPrivate: CEDAR DEFINITIONS ~ BEGIN Reader: TYPE ~ REF ReaderRep; ReaderRep: TYPE ~ RECORD [ root: Tioga.Node ¬ NIL, -- root of document offset: INT ¬ 0, -- position of [root, 0] node: Tioga.Node ¬ NIL, -- current node rdr: NodeReader.Ref, -- node reader for node index: INT ¬ 0, -- current index in node start: INT ¬ 0, -- LocNumber[[node, 0]] putback: LIST OF TiogaAccess.TiogaChar ¬ NIL ]; ropePieces: NAT ~ 15; Writer: TYPE ~ REF WriterRep; WriterRep: TYPE ~ RECORD [ root: Tioga.Node, first: Tioga.Node, last: Tioga.Node, level: INT, lastLevel: INT, nodeSize: INT, ropes: ARRAY [0..ropePieces) OF Rope.ROPE, textBuf: REF TEXT, runs: Rosary.ROSARY, newLooks: Tioga.Looks, newLooksRepeat: INT, charSets: Rosary.ROSARY, newCharSet: Tioga.CharSet, newCharSetRepeat: INT, charProps: Rosary.ROSARY, newCharProp: Tioga.PropList, newCharPropRepeat: INT ]; END.  TiogaAccessPrivate.mesa Copyright Σ 1985, 1986, 1991, 1992 by Xerox Corporation. All rights reserved. Russ Atkinson (RRA) July 2, 1985 11:06:55 am PDT Doug Wyatt, July 7, 1992 4:55 pm PDT Private types for TiogaAccess. The contents of the current node is represented by the concatenation of ropes in order by decreasing index, together with the contents of textBuf. The size of ropes[i] is either 0 or approximately textBufSize*2**i; building the rope this way yields a balanced rope without a lot of flattening. ΚZ•NewlineDelimiter –(cedarcode) style™codešœ™Kšœ ΟeœC™NK™0K™$K˜K™K™—šΟk ˜ Kšœ žœ˜Kšœžœžœ˜Kšœžœžœ˜Kšœžœ"˜-Kšœ žœ ˜—K˜KšΟnœžœž œž˜-K˜Kšœžœžœ ˜šœ žœžœ˜Kš œœžœΟc      ˜+Kšœžœ ˜)Kšœžœ ˜'Kšœ ˜,Kšœžœ ˜(Kšœžœ ˜'Kšœ žœžœž˜,Kšœ˜K˜—šœ žœ˜K˜—Kšœžœžœ ˜šœ žœžœ˜Kšœ˜Kšœ˜Kšœ˜Kšœžœ˜ Kšœ žœ˜Kšœ žœ˜Kšœžœžœžœ˜*šœ žœžœ˜Jšœ¦™¦—Kšœ žœ˜Kšœ˜Kšœžœ˜Kšœžœ˜Kšœ˜Kšœžœ˜Kšœžœ˜Kšœ˜Kšœž˜Kšœ˜K˜—K˜Kšžœ˜K˜—…—l