-- TexPackDefs.mesa

-- last written by Doug Wyatt, January 19, 1980  9:40 PM

DIRECTORY
	TexDefs: FROM "TexDefs",
	TexGlueDefs: FROM "TexGlueDefs",
	TexNodeDefs: FROM "TexNodeDefs",
	TexTokenDefs: FROM "TexTokenDefs";

TexPackDefs: DEFINITIONS =
BEGIN OPEN TexGlueDefs,TexDefs,TexNodeDefs;

OverfullBox: SIGNAL[box: BoxNodePtr, excess: Dimn];

packflexsums: PRIVATE FlexSumsPtr;

HPackage: PROCEDURE[list: NodeListPtr, desiredwidth: Dimn, xpand: BOOLEAN,
	inserts: NodeListPtr, flexsums: FlexSumsPtr←packflexsums]
	RETURNS[BoxNodePtr];
HPack: PROCEDURE[list: NodeListPtr, dw: Dimn, xp: BOOLEAN←FALSE]
	RETURNS[BoxNodePtr];
HBox: PROCEDURE[list: NodeListPtr] RETURNS[BoxNodePtr];

VPackage: PROCEDURE[list: NodeListPtr, desiredheight: Dimn, xpand: BOOLEAN,
	page: BOOLEAN, flexsums: FlexSumsPtr←packflexsums]
	RETURNS[BoxNodePtr];
VPack: PROCEDURE[list: NodeListPtr, dh: Dimn, xp: BOOLEAN←FALSE]
	RETURNS[BoxNodePtr];
VBox: PROCEDURE[list: NodeListPtr] RETURNS[BoxNodePtr];

CurMark: PROCEDURE RETURNS[TexTokenDefs.TokenListPtr];


TexPack: PROGRAM;

END.