Changeset 811


Ignore:
Timestamp:
Jul 29, 2012 10:05:22 AM (12 years ago)
Author:
Anya Helene Bagge
Message:

Update to new Rascal

Location:
trunk/magnolia-eclipse/src/org/magnolialang
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/magnolia-eclipse/src/org/magnolialang/infra/EclipseInfra.java

    r804 r811  
    99
    1010import org.eclipse.core.runtime.IPath;
     11import org.eclipse.imp.pdb.facts.IConstructor;
     12import org.eclipse.imp.pdb.facts.ISourceLocation;
    1113import org.magnolialang.compiler.ICompiler;
    1214import org.magnolialang.eclipse.MagnoliaFileLocator;
     
    6567
    6668        @Override
    67         public IGTD getParser(String moduleName) {
     69        public IGTD<IConstructor, IConstructor, ISourceLocation> getParser(String moduleName) {
    6870                return RascalParser.getParser(moduleName);
    6971        }
     
    7779
    7880        @Override
    79         public IActionExecutor getActionExecutor(String moduleName, IGTD parser) {
     81        public IActionExecutor<IConstructor> getActionExecutor(String moduleName, IGTD<IConstructor, IConstructor, ISourceLocation> parser) {
    8082                return RascalParser.getActionExecutor(moduleName, parser);
    8183        }
  • trunk/magnolia-eclipse/src/org/magnolialang/infra/IInfra.java

    r807 r811  
    66
    77import org.eclipse.core.runtime.IPath;
     8import org.eclipse.imp.pdb.facts.IConstructor;
     9import org.eclipse.imp.pdb.facts.ISourceLocation;
    810import org.magnolialang.compiler.ICompiler;
    911import org.magnolialang.resources.IModuleManager;
     
    4850         * @return A new parser instance
    4951         */
    50         public IGTD getParser(String moduleName);
     52        public IGTD<IConstructor, IConstructor, ISourceLocation> getParser(String moduleName);
    5153
    5254
     
    7476         * @return An ActionExecutor
    7577         */
    76         public IActionExecutor getActionExecutor(String moduleName, IGTD parser);
     78        public IActionExecutor<IConstructor> getActionExecutor(String moduleName, IGTD<IConstructor, IConstructor, ISourceLocation> parser);
    7779
    7880
  • trunk/magnolia-eclipse/src/org/magnolialang/load/ModuleParser.java

    r794 r811  
    99
    1010import org.eclipse.imp.pdb.facts.IConstructor;
     11import org.eclipse.imp.pdb.facts.ISourceLocation;
    1112import org.magnolialang.Config;
    1213import org.magnolialang.infra.Infra;
     
    1516import org.rascalmpl.parser.gtd.exception.UndeclaredNonTerminalException;
    1617import org.rascalmpl.parser.gtd.io.InputConverter;
     18import org.rascalmpl.parser.gtd.result.out.DefaultNodeFlattener;
     19import org.rascalmpl.parser.uptr.UPTRNodeFactory;
    1720
    1821public final class ModuleParser {
     22        private static final UPTRNodeFactory                            NODE_CONSTRUCTOR_FACTORY                        = new UPTRNodeFactory();
     23
    1924        private static final Map<ILanguage, ModuleParser>       parsers                                                         = new HashMap<ILanguage, ModuleParser>();
    2025
     
    4752        public IConstructor parseModule(final URI location, final char[] moduleString) {
    4853                try {
    49                         IGTD parser = Infra.get().getParser(module);
    50                         IConstructor pt = (IConstructor) parser.parse("start__Program", location, moduleString, Infra.get().getActionExecutor(module, parser), new org.rascalmpl.parser.uptr.NodeToUPTR());
     54                        IGTD<IConstructor, IConstructor, ISourceLocation> parser = Infra.get().getParser(module);
     55                        IConstructor pt = (IConstructor) parser.parse("start__Program", location, moduleString, Infra.get().getActionExecutor(module, parser),
     56                                        new DefaultNodeFlattener<IConstructor, IConstructor, ISourceLocation>(), NODE_CONSTRUCTOR_FACTORY);
    5157                        hasAlreadyTriedToRegenerateParser = false;
    5258                        return pt;
  • trunk/magnolia-eclipse/src/org/magnolialang/magnolia/typechecker/Environment.rsc

    r782 r811  
    156156        result = env.names[basename(name)][kind];
    157157        if(result == {}) {
     158                termPrintln("lookupName: ", name);
    158159                env = errorMark(env, "Undefined name \'<dispNameOf(name, env)>\' in <nameKind(kind)> clause", locOf(name));
    159160        }
  • trunk/magnolia-eclipse/src/org/magnolialang/magnolia/typechecker/Expressions.rsc

    r796 r811  
    276276                                env = addTokenRef(name, f, env);
    277277                                env = errorMark(env, "Internal Compiler Error: StaticSemantics::chkExpr(): unknown function id <yieldTerm(f)>", locOf(func));
     278                                return <Apply(func, seq(argValues)), Unknown(), env>;
    278279                        }
    279280                        else {
  • trunk/magnolia-eclipse/src/org/magnolialang/magnolia/typechecker/Statements.rsc

    r771 r811  
    2727
    2828public tuple[AST,Env] checkStat(AST stat, Env env) {
    29         //termPrintln("checkStat: ", stat);
     29        termPrintln("checkStat: ", stat);
    3030        <s, env> = chkStat(stat, env);
    3131        return <preserveAnnos(s, stat), env>;
     
    101101       
    102102        if(Proc(name) := proc) {
     103                                termPrintln("chkStat: ", name);
     104               
    103105                ps = lookupName(name, StatKind(), env);
    104106                if(ps == {})
  • trunk/magnolia-eclipse/src/org/magnolialang/rascal/IGrammarListener.java

    r631 r811  
    66import org.eclipse.core.runtime.jobs.Job;
    77import org.eclipse.imp.pdb.facts.IConstructor;
     8import org.eclipse.imp.pdb.facts.ISourceLocation;
    89import org.rascalmpl.parser.gtd.IGTD;
    910
     
    3738         *         completed synchroniously
    3839         */
    39         Job getJob(String name, String moduleName, URI uri, IConstructor grammar, Class<IGTD> parser, PrintWriter out);
     40        Job getJob(String name, String moduleName, URI uri, IConstructor grammar, Class<IGTD<IConstructor, IConstructor, ISourceLocation>> parser, PrintWriter out);
    4041}
  • trunk/magnolia-eclipse/src/org/magnolialang/rascal/ParserGeneratorModule.java

    r649 r811  
    3737// TODO: maybe move this whole thing to a service thread, to avoid synchronization
    3838class ParserGeneratorModule {
    39         protected final Evaluator               evaluator               = StandAloneInvoker.getInterpreter().newEvaluator();
    40         protected final IValueFactory   vf                              = evaluator.getValueFactory();
    41         protected final JavaBridge              bridge                  = new JavaBridge(evaluator.getClassLoaders(), vf);
    42         protected final String                  moduleName;
    43         protected final String                  name;
    44         private final GeneratorJob              job;
    45         protected URI                                   uri;
    46         protected Class<IGTD>                   parser                  = null;
    47         protected long                                  lastModified    = 0;
    48         protected Throwable                             except                  = null;
    49         protected IConstructor                  grammar                 = null;
     39        protected final Evaluator                                                                                       evaluator               = StandAloneInvoker.getInterpreter().newEvaluator();
     40        protected final IValueFactory                                                                           vf                              = evaluator.getValueFactory();
     41        protected final JavaBridge                                                                                      bridge                  = new JavaBridge(evaluator.getClassLoaders(), vf);
     42        protected final String                                                                                          moduleName;
     43        protected final String                                                                                          name;
     44        private final GeneratorJob                                                                                      job;
     45        protected URI                                                                                                           uri;
     46        protected Class<IGTD<IConstructor, IConstructor, ISourceLocation>>      parser                  = null;
     47        protected long                                                                                                          lastModified    = 0;
     48        protected Throwable                                                                                                     except                  = null;
     49        protected IConstructor                                                                                          grammar                 = null;
    5050        // private ISet prodSet = null;
    51         protected static final String   packageName             = "org.rascalmpl.java.parser.object";
    52         protected boolean                               generatorLoaded = false;
    53         protected boolean                               moduleImported  = false;
     51        protected static final String                                                                           packageName             = "org.rascalmpl.java.parser.object";
     52        protected boolean                                                                                                       generatorLoaded = false;
     53        protected boolean                                                                                                       moduleImported  = false;
    5454
    5555
     
    6464
    6565
    66         synchronized IGTD getParser() {
     66        synchronized IGTD<IConstructor, IConstructor, ISourceLocation> getParser() {
    6767                checkForUpdate();
    6868                if(parser == null) {
     
    128128
    129129
    130         public IActionExecutor getActionExecutor() {
    131                 return new VoidActionExecutor();// evaluator, (IParserInfo) parser);
     130        public IActionExecutor<IConstructor> getActionExecutor() {
     131                return new VoidActionExecutor<IConstructor>();// evaluator, (IParserInfo) parser);
    132132        }
    133133
     
    400400                                                                                }
    401401                                                                        });
    402                                                         parser = (Class<IGTD>) loader.loadClass(packageName + "." + clsName);
     402                                                        parser = (Class<IGTD<IConstructor, IConstructor, ISourceLocation>>) loader.loadClass(packageName + "." + clsName);
    403403                                                        lastModified = modTime;
    404404                                                        break;
  • trunk/magnolia-eclipse/src/org/magnolialang/rascal/RascalParser.java

    r631 r811  
    88
    99import org.eclipse.imp.pdb.facts.IConstructor;
     10import org.eclipse.imp.pdb.facts.ISourceLocation;
    1011import org.rascalmpl.parser.gtd.IGTD;
    1112import org.rascalmpl.parser.gtd.result.action.IActionExecutor;
     
    7172         * @return An ActionExecutor
    7273         */
    73         public static IActionExecutor getActionExecutor(String moduleName, IGTD parser) {
     74        public static IActionExecutor<IConstructor> getActionExecutor(String moduleName, IGTD<IConstructor, IConstructor, ISourceLocation> parser) {
    7475                return getParserModule(moduleName).getActionExecutor();
    7576        }
  • trunk/magnolia-eclipse/src/org/magnolialang/util/syntax/generators/GrammarInfoGenerator.java

    r745 r811  
    1616import org.eclipse.core.runtime.jobs.Job;
    1717import org.eclipse.imp.pdb.facts.IConstructor;
     18import org.eclipse.imp.pdb.facts.ISourceLocation;
    1819import org.eclipse.imp.pdb.facts.IString;
    1920import org.eclipse.imp.pdb.facts.ITuple;
     
    3536
    3637        @Override
    37         public Job getJob(final String name, final String moduleName, final URI uri, final IConstructor grammar, Class<IGTD> parser, PrintWriter out) {
     38        public Job getJob(final String name, final String moduleName, final URI uri, final IConstructor grammar, Class<IGTD<IConstructor, IConstructor, ISourceLocation>> parser, PrintWriter out) {
    3839                try {
    3940                        long lastMod = Config.getResolverRegistry().lastModified(uri);
Note: See TracChangeset for help on using the changeset viewer.