aboutsummaryrefslogtreecommitdiff
path: root/src/interp/i-spec2.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-08-09 22:51:35 +0000
committerdos-reis <gdr@axiomatics.org>2008-08-09 22:51:35 +0000
commit1687da9f3f891156c71b320f944e5c0fbaf1cbd0 (patch)
treea073231126a8058766142b5e1b15267e3ddb3c7b /src/interp/i-spec2.boot
parentf176a2f516055a0a211e6dd1d05c836dd913692e (diff)
downloadopen-axiom-1687da9f3f891156c71b320f944e5c0fbaf1cbd0.tar.gz
* interp/pf2sex.boot (pf2Sex1): Handle more ASTs.
(pfType2SexOrNil): New. (pfDoc2SexOrNil): Likewise. (pfWith2Sex): Likewise. (pfAdd2Sex): Likewise. (pfWDeclare2Sex): Likewise. (pfAttribute2Sex): Likewise. (pfWIf2Sex): Likewise. (pfExport2Sex): Likewise. (pfInline2Sex): Likewise. (pfImport2Sex): Likewise. (pfQualType2Sex): Likewise. * interp/ptrees.boot (pf0InlineItems): New. * interp/i-spec2.boot (up%Import): New. (sorry): Likewise. (up%Export): Likewise. (up%Inline): Likewise. (up%With): Likewise. (up%Add): Likewise. * interp/i-intern.boot (mkAtree3): Handle %Inline, %With, %Add, and %Export. * interp/i-spec1.boot ($specialOps): Adjust. * doc/msgs/s2-us.msgs (S2IP0006): New.
Diffstat (limited to 'src/interp/i-spec2.boot')
-rw-r--r--src/interp/i-spec2.boot29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/interp/i-spec2.boot b/src/interp/i-spec2.boot
index f8c2ab27..e78da954 100644
--- a/src/interp/i-spec2.boot
+++ b/src/interp/i-spec2.boot
@@ -1160,6 +1160,14 @@ copyHack(env) ==
CONS(CAR p,[(EQCAR(q,'localModemap) => q; copy q) for q in CDR p])
[[d]]
+--% importing domains
+up%Import t ==
+ t isnt [.,:types] => nil
+ -- ??? shall we error in case types is nil?
+ for x in types repeat
+ $e := addDomain(devaluate objVal getValue x,$e)
+ setValueToVoid t
+
--% Macro handling
-- Well, in fact we never handle macros in the interpreter directly.
@@ -1173,6 +1181,27 @@ up%Macro t ==
up%MLambda t ==
setValueToVoid t
+
+--% Sorry for unhandled input constructs
+sorry kind ==
+ throwKeyedMsg("S2IP0006",[kind])
+
+--% Export
+up%Export t ==
+ sorry '"export declaration"
+
+--% Inline
+up%Inline t ==
+ sorry '"inline declaration"
+
+--% Category
+up%With t ==
+ sorry '"category definition"
+
+--% Domain
+up%Add t ==
+ sorry '"domain definition"
+
-- Creates the function names of the special function handlers and puts
-- them on the property list of the function name