Changeset 3099

Show
Ignore:
Timestamp:
11/25/08 08:12:32 (12 months ago)
Author:
sukyoungryu
Message:

[ast refactoring] Reshuffled some node fields: Component, FnExpr?, and _RewriteGenericArrowType

Location:
trunk/ProjectFortress
Files:
9 modified

Legend:

Unmodified
Added
Removed
  • trunk/ProjectFortress/astgen/Fortress.ast

    r3098 r3099  
    146146             *       end 
    147147             */ 
    148             Component(boolean _native = false, APIName name, List<Import> imports, 
     148            Component(boolean _native = false, 
    149149                      List<APIName> exports, List<Decl> decls, 
    150150                      List<_RewriteObjectExpr> objectExprs = 
     
    915915             * e.g.) fn x => x + 2 
    916916             */ 
    917             FnExpr(ignoreForEquals Span span, // no default -- required to produce a fnName 
    918                    ignoreForEquals boolean parenthesized = false, 
    919                    IdOrOpOrAnonymousName name = new AnonymousFnName(in_span), 
     917            FnExpr(IdOrOpOrAnonymousName name = new AnonymousFnName(in_span), 
    920918                   List<StaticParam> staticParams 
    921919                       = Collections.<StaticParam>emptyList(), 
     
    13991397                _RewriteGenericArrowType(List<StaticParam> staticParams 
    14001398                                          = Collections.<StaticParam>emptyList(), 
    1401                                          Domain domain, 
    1402                                          Type range, 
    1403                                          Effect effect 
    1404                                           = FortressUtil.emptyEffect(), 
    14051399                                         Option<WhereClause> where 
    14061400                                          = Option.<WhereClause>none()); 
  • trunk/ProjectFortress/src/com/sun/fortress/compiler/typechecker/FnTypeEnv.java

    r3095 r3099  
    149149                // Invariant: _fn.params().isSome() 
    150150                // Otherwise, _fn should not have been in entries. 
    151                 overloadedTypes.add(new _RewriteGenericArrowType(loc, _fn.staticParameters(), 
     151                overloadedTypes.add(new _RewriteGenericArrowType(loc, 
    152152                                                                 domainFromParams(_fn.parameters()), 
    153153                                                                 selfType, 
    154154                                                                 makeEffect(loc.getEnd(), CollectUtil.makeList(_fn.thrownTypes())), 
     155                                                                 _fn.staticParameters(), 
    155156                                                                 _fn.where())); 
    156157            } 
  • trunk/ProjectFortress/src/com/sun/fortress/compiler/typechecker/ObjectTypeEnv.java

    r3096 r3099  
    9090                // TODO: handle type variables bound in where clause 
    9191                type = 
    92                         new _RewriteGenericArrowType(decl.getSpan(), decl.getStaticParams(), 
    93                                                  domainFromParams(decl.getParams().unwrap()), 
    94                                                  NodeFactory.makeTraitType(_var, TypeEnv.staticParamsToArgs(decl.getStaticParams())), 
    95                                                  decl.getWhere()); 
     92                        new _RewriteGenericArrowType(decl.getSpan(), 
     93                                                     domainFromParams(decl.getParams().unwrap()), 
     94                                                     NodeFactory.makeTraitType(_var, TypeEnv.staticParamsToArgs(decl.getStaticParams())), 
     95                                                     decl.getStaticParams(), 
     96                                                     decl.getWhere()); 
    9697            } 
    9798        } 
  • trunk/ProjectFortress/src/com/sun/fortress/compiler/typechecker/TypeChecker.java

    r3098 r3099  
    20312031                Component new_comp = 
    20322032                        new Component(that.getSpan(), 
    2033                                         that.is_native(), 
    20342033                                        (APIName)name_result.ast(), 
    20352034                                        (List<Import>)TypeCheckerResult.astFromResults(imports_result), 
     2035                                        that.is_native(), 
    20362036                                        (List<APIName>)TypeCheckerResult.astFromResults(exports_result), 
    20372037                                        (List<Decl>)TypeCheckerResult.astFromResults(decls_result)); 
  • trunk/ProjectFortress/src/com/sun/fortress/compiler/typechecker/TypeEnv.java

    r3095 r3099  
    148148    protected static _RewriteGenericArrowType genericArrowFromDecl(FnDecl decl) { 
    149149        return new _RewriteGenericArrowType(decl.getSpan(), 
    150                                             decl.getStaticParams(), 
    151150                                            domainFromParams(decl.getParams()), 
    152151                                            // all types have been filled in at this point 
     
    154153                                            makeEffect(decl.getSpan().getEnd(), 
    155154                                                       decl.getThrowsClause()), 
     155                                            decl.getStaticParams(), 
    156156                                            decl.getWhere()); 
    157157    } 
  • trunk/ProjectFortress/src/com/sun/fortress/interpreter/rewrite/DesugarerVisitor.java

    r3096 r3099  
    669669 
    670670        AbstractNode nn = 
    671          new Component(com.getSpan(), com.is_native(), 
    672                  name_result, imports_result, 
     671         new Component(com.getSpan(), 
     672                 name_result, imports_result, com.is_native(), 
    673673                 exports_result, decls_result, 
    674674                 objectExprs, Useful.list(functionals)); 
  • trunk/ProjectFortress/src/com/sun/fortress/parser/Compilation.rats

    r3093 r3099  
    122122           yyValue = new Component(span, a2, a3, a4, a5); 
    123123       else 
    124            yyValue = new Component(span, true, a2, a3, a4, a5); 
     124           yyValue = new Component(span, a2, a3, true, a4, a5); 
    125125     }; 
    126126 
  • trunk/ProjectFortress/src/com/sun/fortress/parser/preparser/PreCompilation.rats

    r3093 r3099  
    9898           yyValue = new Component(span, a2, a3, a4, a5); 
    9999       else 
    100            yyValue = new Component(span, true, a2, a3, a4, a5); 
     100           yyValue = new Component(span, a2, a3, true, a4, a5); 
    101101     }; 
    102102 
  • trunk/ProjectFortress/src/com/sun/fortress/tools/FortressAstToConcrete.java

    r3098 r3099  
    22492249 
    22502250    @Override public String for_RewriteGenericArrowTypeOnly(_RewriteGenericArrowType that, 
    2251                                                             List<String> staticParams_result, 
    22522251                                                            String domain_result, 
    22532252                                                            String range_result, 
    22542253                                                            String effect_result, 
     2254                                                            List<String> staticParams_result, 
    22552255                                                            Option<String> where_result) { 
    22562256        StringBuilder s = new StringBuilder();