diff options
author | dos-reis <gdr@axiomatics.org> | 2008-09-05 03:01:15 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2008-09-05 03:01:15 +0000 |
commit | d09cf0aa8047981bbf25722b5cadd0aa8b6c533f (patch) | |
tree | 0ae9579dadd3977eb4ee03e380dc163625ef8d03 /src/interp | |
parent | 6571d731c239396887164dec5573e1c84ee2b51d (diff) | |
download | open-axiom-d09cf0aa8047981bbf25722b5cadd0aa8b6c533f.tar.gz |
* interp/g-util.boot (getTypeOfSyntax): Handle more ASTs.
* algebra/syntax.spad.pamphlet (SpadSyntaxCategory): Add
pretty-printer.
(HeadAst): Use Identifier.
(TypeAst,MappingAst,ImportAst,SignatureAst,AttributeAst,JoinAst,
IfAst,RepeatAst,WhileAst,InAst,CollectAst,ConstructAst,
ExitAst,ReturnAst,SequenceAst,LetAst,PretendAst,CoerceAst,
RestrictAst,CallAst,SegmentAst): New domains.
* algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add
TYPEAST, IMPTAST, MAPPAST, ATTRAST, JOINAST, IFAST, RPTAST
WHILEAST, INAST, CLLCAST, LSTAST, EXITAST, RETAST, SEGAST,
PRTDAST, CRCAST, LETAST.
* share/algebra: Update databases.
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/g-util.boot | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot index d70a7361..6d3fe39f 100644 --- a/src/interp/g-util.boot +++ b/src/interp/g-util.boot @@ -125,6 +125,26 @@ getTypeOfSyntax t == (m := getBasicMode t) and not member(m,[$EmptyMode,$NoValueMode]) => ["Literal",m] $Syntax + [op,:.] := t + op = "Mapping" => '(MappingAst) + op = "Join" => '(JoinAst) + op in '(%Import import) => '(ImportAst) + op in '(%Signature SIGNATURE) => '(SignatureAst) + op = "QUOTE" and #t = 2 and IDENTP second t => ["Literal",$Symbol] + op = "IF" => '(IfAst) + op = "REPEAT" => '(RepeatAst) + op = "WHILE" => '(WhileAst) + op = "IN" => '(InAst) + op = "COLLECT" => '(CollectAst) + op = "construct" => '(ConstructAst) + op = "exit" => '(ExitAst) + op = "return" => '(ReturnAst) + op = "SEGMENT" => '(SegmentAst) + op = "SEQ" => '(SequenceAst) + op = "pretend" => '(PretendAst) + op = "::" => '(CoerceAst) + op = "@" => '(RestrictAst) + op = "%LET" => '(LetAst) $Syntax --% |