-- TexMainDefs.mesa -- last written by Doug Wyatt, November 26, 1979 5:04 PM DIRECTORY TexDefs: FROM "TexDefs", TexGlueDefs: FROM "TexGlueDefs", TexMathDefs: FROM "TexMathDefs", TexNodeDefs: FROM "TexNodeDefs", TexTableDefs: FROM "TexTableDefs", TexTokenDefs: FROM "TexTokenDefs"; TexMainDefs: DEFINITIONS = BEGIN OPEN TexNodeDefs,TexDefs; VHead: TYPE = RECORD [ vlist: NodeListPtr, prevdepth: Dimn ]; VHeadPtr: TYPE = POINTER TO VHead; HHead: TYPE = RECORD [ hlist: NodeListPtr, spacefactor: TexTableDefs.SpaceFactor ]; HHeadPtr: TYPE = POINTER TO HHead; pflag: Dimn=FIRST[Dimn]; -- from TexMain Unimplemented: SIGNAL; Continue: SIGNAL; Reswitch: SIGNAL; Undefined: SIGNAL; CantDoThat: SIGNAL[mode: ModeType, restricted: BOOLEAN]; FallThru: SIGNAL; MainControl: PROCEDURE; DoIfEven: PROCEDURE[t: IfType]; DoIfT: PROCEDURE; TrueEnd: PROCEDURE; FalseEnd: PROCEDURE; DoFntFam: PROCEDURE[mfont: TexMathDefs.MFont]; ScanMovedBox: PROCEDURE[neg: BOOLEAN] RETURNS[BoxNodePtr]; ScanGlueSpec: PROCEDURE RETURNS[TexGlueDefs.GluePtr]; ScanLeaders: PROCEDURE RETURNS[NodePtr]; SkipGlue: PROCEDURE[gluetype: TexGlueDefs.GlueType] RETURNS[NodePtr]; ScanRuleNode: PROCEDURE RETURNS[NodePtr]; GetBox: PROCEDURE[type: BoxType] RETURNS[p: BoxNodePtr]; HangVals: PROCEDURE[hang: HangSpec, width: Dimn] RETURNS[begin: CARDINAL, width0,width1,indent0,indent1: Dimn]; DoTopBotIns: PROCEDURE[tb: TopBotType, dir: Direction, Store: PROCEDURE[NodePtr]]; ScanPenltyNode: PROCEDURE RETURNS[NodePtr]; DoChng: PROCEDURE[ChngType]; DoSetCount,DoAdvCount,DoCount: PROCEDURE; DoSave: PROCEDURE; DoTopBotMark: PROCEDURE[t: MarkType]; CommonCmd: PROCEDURE; CheckAlignment: PROCEDURE; MissingBrace: PROCEDURE; MissingMathbr: PROCEDURE; MissingRight: PROCEDURE; MissingRB: PROCEDURE; -- from TexVMode VAppend: PROCEDURE[vh: VHeadPtr, b: BoxNodePtr]; VMode: PROCEDURE[vhead: VHeadPtr, restricted: BOOLEAN]; SetOutputRoutine: PROCEDURE[TexTokenDefs.TokenListPtr]; RunOutputRoutine: PROCEDURE RETURNS[BoxNodePtr]; -- from TexHMode HAppend: PROCEDURE[hh: HHeadPtr, b: BoxNodePtr]; HMode: PROCEDURE[hhead: HHeadPtr, restricted: BOOLEAN]; InterLineGlue: PROCEDURE[delta: Dimn, p: TexGlueDefs.GluePtr] RETURNS[TexGlueDefs.GluePtr]; -- from TexMMode GetFormula: PROCEDURE[flist: NodeListPtr]; GetDisplay: PROCEDURE[dlist: NodeListPtr] RETURNS[eqno: BoxNodePtr]; MathQuad: PROCEDURE RETURNS[Dimn]; -- from TexPage AddToPage: PROCEDURE[list: NodeListPtr]; Page: PROCEDURE RETURNS[page: BoxNodePtr]; Mark: PROCEDURE[t: MarkType] RETURNS[TexTokenDefs.TokenListPtr]; FlushOutput: PROCEDURE[maxdeadcycles: CARDINAL]; TexControl: PROGRAM; TexMain: PROGRAM; TexPage: PROGRAM; TexVMode: PROGRAM; TexHMode: PROGRAM; TexMMode: PROGRAM; END.