CommanderRegistry.mesa
Copyright Ó 1990, 1991 by Xerox Corporation. All rights reserved.
Swinehart, December 10, 1990 11:49 am PST
Michael Plass, February 21, 1991 2:02 am PST
This interface allows for the registration of command and property lookup mechanisms that are different from the standard ones.
DIRECTORY
Commander USING [ CommandProcHandle, EnumerateAction, Handle ],
Prop USING [ PropList ],
Rope USING [ ROPE ];
CommanderRegistry:
CEDAR
DEFINITIONS ~ {
LookupProc:
TYPE ~
PROC [key:
ROPE]
RETURNS [Commander.CommandProcHandle];
EnumerateProc:
TYPE ~
PROC [matchProc: Commander.EnumerateAction]
RETURNS [key: ROPE, procData: Commander.CommandProcHandle];
EnumPatternProc:
TYPE ~
PROC [pattern:
ROPE, matchProc: Commander.EnumerateAction]
RETURNS [key: ROPE, procData: Commander.CommandProcHandle];
LookupProp: TYPE ~ PROC [cmd: Commander.Handle, key: REF] RETURNS [value: REF];
ChangeProc:
TYPE =
PROC [
oldLk: PropList --OF REF LookupProc--,
oldEn: PropList --OF REF EnumerateProc--,
oldEnP: PropList --OF REF EnumPatternProc--,
oldLkPrp: PropList --OF REF LookupProp--]
RETURNS [
newLk: PropList --OF REF LookupProc--,
newEn: PropList --OF REF EnumerateProc--,
newEnP: PropList --OF REF EnumPatternProc--,
newLkPrp: PropList --OF REF LookupProp--];
ChangeRegistry: PROC [change: ChangeProc];
EnumeratePattern: EnumPatternProc;
GetProp: LookupProp;
}.