-- JaMStartImpl.mesa
-- Last changed by Doug Wyatt, 7-Oct-81 11:16:29
DIRECTORY
JaMInternal USING [Frame],
JaMOps USING [InstallReason];
JaMStartImpl: PROGRAM
EXPORTS JaMOps = {
OPEN JaMOps, JaMInternal;
installMax: CARDINAL = 20;
InstallEntry: TYPE = PROC[InstallReason,Frame];
InstallTable: TYPE = ARRAY[0..installMax) OF InstallEntry;
installLen: CARDINAL ← 0;
installs: InstallTable;
Install: PUBLIC PROC[proc: PROC[InstallReason,Frame]] = {
IF NOT installLen<installMax THEN ERROR;
installs[installLen] ← proc;
installLen ← installLen + 1;
};
ForEachInstalled: PUBLIC PROC[why: InstallReason, frame: Frame] = {
FOR i: CARDINAL IN[0..installLen) DO installs[i][why,frame] ENDLOOP;
};
}.