Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/branches/idlbasis-devel/src/MLRISC/Tools/FakeSMLAst/ast-rewrite.sml
ViewVC logotype

Diff of /sml/branches/idlbasis-devel/src/MLRISC/Tools/FakeSMLAst/ast-rewrite.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 848, Mon Jun 25 19:29:29 2001 UTC revision 1002, Fri Nov 30 17:11:33 2001 UTC
# Line 65  Line 65 
65              | LOCALdecl(d1,d2) => LOCALdecl(map decl d1,map decl d2)              | LOCALdecl(d1,d2) => LOCALdecl(map decl d1,map decl d2)
66              | SEQdecl ds => SEQdecl(map decl ds)              | SEQdecl ds => SEQdecl(map decl ds)
67              | STRUCTUREdecl(id,ds,s,se) =>              | STRUCTUREdecl(id,ds,s,se) =>
68                   STRUCTUREdecl(id,map decl ds,s, sexp se)                   STRUCTUREdecl(id,map decl ds,sigconopt s,sexp se)
69              | FUNCTORdecl(id,ds,s,se) =>              | FUNCTORdecl(id,ds,s,se) =>
70                   FUNCTORdecl(id, map decl ds,s, sexp se)                   FUNCTORdecl(id, map decl ds,sigconopt s, sexp se)
71              | INCLUDESIGdecl s => INCLUDESIGdecl(sigexp s)              | INCLUDESIGdecl s => INCLUDESIGdecl(sigexp s)
72              | SIGNATUREdecl(id,s) => SIGNATUREdecl(id, sigexp s)              | SIGNATUREdecl(id,s) => SIGNATUREdecl(id, sigexp s)
73              | STRUCTURESIGdecl(id,s) => STRUCTURESIGdecl(id, sigexp s)              | STRUCTURESIGdecl(id,s) => STRUCTURESIGdecl(id, sigexp s)
74              | OPENdecl ids => OPENdecl ids              | OPENdecl ids => OPENdecl ids
75              | FUNCTORARGdecl(id,se) => FUNCTORARGdecl(id, sigexp se)              | FUNCTORARGdecl(id,se) => FUNCTORARGdecl(id,sigcon se)
76              | EXCEPTIONdecl ebs => EXCEPTIONdecl(map ebind ebs)              | EXCEPTIONdecl ebs => EXCEPTIONdecl(map ebind ebs)
77              | MARKdecl(l,d) => (Error.setLoc l; MARKdecl(l,decl d))              | MARKdecl(l,d) => (Error.setLoc l; MARKdecl(l,decl d))
78              | d => d              | d => d
79          in rwDecl decl d end          in rwDecl decl d end
80    
81            and sigcon{abstract,sigexp=se} = {abstract=abstract,sigexp=sigexp se}
82    
83            and sigconopt s = Option.map sigcon s
84    
85          and ebind(b as EXCEPTIONbind(id,NONE)) = b          and ebind(b as EXCEPTIONbind(id,NONE)) = b
86            | ebind(EXCEPTIONbind(id,SOME t)) = EXCEPTIONbind(id,SOME(ty t))            | ebind(EXCEPTIONbind(id,SOME t)) = EXCEPTIONbind(id,SOME(ty t))
87            | ebind(b as EXCEPTIONEQbind _) = b            | ebind(b as EXCEPTIONEQbind _) = b
# Line 126  Line 130 
130                  | TUPLEpat ps => TUPLEpat(map pat ps)                  | TUPLEpat ps => TUPLEpat(map pat ps)
131                  | RECORDpat(lps,flex) =>                  | RECORDpat(lps,flex) =>
132                       RECORDpat(map (fn (l,p) => (l,pat p)) lps, flex)                       RECORDpat(map (fn (l,p) => (l,pat p)) lps, flex)
133                    | TYPEDpat(p,t) => TYPEDpat(pat p,ty t)
134                  | CONSpat(id,NONE) => p                  | CONSpat(id,NONE) => p
135                  | CONSpat(id,SOME p) => CONSpat(id,SOME(pat p))                  | CONSpat(id,SOME p) => CONSpat(id,SOME(pat p))
136                  | ORpat ps => ORpat(map pat ps)                  | ORpat ps => ORpat(map pat ps)

Legend:
Removed from v.848  
changed lines
  Added in v.1002

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0