diff options
author | dos-reis <gdr@axiomatics.org> | 2008-08-29 09:25:35 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2008-08-29 09:25:35 +0000 |
commit | 16636d2429fafcd58c40df7cd994a7e6d6298c41 (patch) | |
tree | 927eff35fa5145f3a55859b10e2b94d6676f7a0b /src/interp/modemap.boot | |
parent | 4c58515e823f4538b14e6c6da821322eb5c71744 (diff) | |
download | open-axiom-16636d2429fafcd58c40df7cd994a7e6d6298c41.tar.gz |
* interp/lisplib.boot (augModemapsFromDomain1): Move to modemap.boot
(mkEvalableCategoryForm): Move to define.boot
Diffstat (limited to 'src/interp/modemap.boot')
-rw-r--r-- | src/interp/modemap.boot | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/interp/modemap.boot b/src/interp/modemap.boot index 2eafb6ad..e35d7bb6 100644 --- a/src/interp/modemap.boot +++ b/src/interp/modemap.boot @@ -240,7 +240,18 @@ augModemapsFromDomain(name,functorForm,e) == if name is ["Union",:dl] then for d in stripUnionTags dl repeat e:= addDomain(d,e) augModemapsFromDomain1(name,functorForm,e) - --see LISPLIB BOOT + +augModemapsFromDomain1(name,functorForm,e) == + GETL(KAR functorForm,"makeFunctionList") => + addConstructorModemaps(name,functorForm,e) + atom functorForm and (catform:= getmode(functorForm,e)) => + augModemapsFromCategory(name,name,functorForm,catform,e) + mappingForm:= getmodeOrMapping(KAR functorForm,e) => + ["Mapping",categoryForm,:functArgTypes]:= mappingForm + catform:= substituteCategoryArguments(rest functorForm,categoryForm) + augModemapsFromCategory(name,name,functorForm,catform,e) + stackMessage('"%1pb is an unknown mode",[functorForm]) + e substituteCategoryArguments(argl,catform) == argl:= substitute("$$","$",argl) |