Commit Graph

177 Commits

Author SHA1 Message Date
Fedor Isakov b3a04066f7 Removed obsolete solutions 2015-06-17 15:39:53 +02:00
Fedor Isakov 9291340812 A new API for constraint processing 2015-06-12 14:24:05 +02:00
Fedor Isakov cd88767e1c Better progress reporting UI for the sample plugin 2015-06-10 16:56:52 +02:00
Fedor Isakov 5793d07d88 Make sure classes_jchr dirs are kept, so that MPS can see them on clean rebuild 2015-06-09 18:09:45 +02:00
Fedor Isakov 9baac48ead Message view tracer to debug JCHR rules execution 2015-06-09 18:09:45 +02:00
Fedor Isakov c41fef5ffe Optimized module imports and added explict dependency on "core" 2015-06-09 13:29:01 +02:00
Fedor Isakov 04b362cc18 IDEA modules updated 2015-06-08 13:39:45 +02:00
Fedor Isakov 7591c0c79e Sample templates: method declaration, subclassing, lub finding, tests 2015-06-08 13:39:21 +02:00
Fedor Isakov 67161188ce LubSolver tests 2015-06-08 13:39:20 +02:00
Fedor Isakov 6268759f7a Launching the handler: assert solver, finding the correct constructor 2015-06-08 13:39:20 +02:00
Fedor Isakov 672515d798 JCHR producing: better processing of Java expressions, list support 2015-06-08 13:39:20 +02:00
Fedor Isakov 42deb2b5e1 Rules collecting/generating: boundParam in required(), pre/post processing of static rule templates 2015-06-08 13:39:19 +02:00
Fedor Isakov f66267d723 Typechecking2 language: introduced boundParam in required(), list support, pre/post processing of static rule templates 2015-06-08 13:39:19 +02:00
Fedor Isakov ed07a82bb5 Typechecking2 runtime: introduced boundParam in required(), list support, pre/post processing of static rule templates 2015-06-08 13:39:19 +02:00
Fedor Isakov 7ee4e4c628 Assert builtin constraint 2015-06-08 13:39:19 +02:00
Fedor Isakov c777801036 Testing LUB solver 2015-05-13 13:49:38 +02:00
Fedor Isakov f6d26f5a35 Introduced ExpressionConstraint; template parts contribute to the main template; refactored the templates runtime 2015-05-13 13:49:38 +02:00
Fedor Isakov 37d3b6c851 Support for usage of StaticMethodCall in constraint; ensure the JCHR compiler error is propagated to make 2015-05-13 13:49:38 +02:00
Fedor Isakov 46f55a0006 LUB finding algorithm and tests 2015-05-13 13:49:38 +02:00
Fedor Isakov 47dcd0864b Updated the IDEA project to run the tests 2015-05-13 13:49:37 +02:00
Fedor Isakov 913b43d508 Typechecking annotation language to display node type along with it in the editor 2015-05-13 13:49:37 +02:00
Fedor Isakov 28ea8ed8e4 Updated the IDEA project to run the handler: new module for typesystem2 runtime 2015-05-13 13:49:37 +02:00
Fedor Isakov f5f999b7be Refactored out SModel-related templates from the runtime. Better reusable pretty printing of nodes. Project reorganization. 2015-04-15 18:27:06 +02:00
Fedor Isakov 1950dcc7a8 Better processing of wildcard variables 2015-04-15 17:24:14 +02:00
Fedor Isakov e67b31bd30 Ensure string logicals are generated properly to CHR 2015-04-14 00:11:40 +02:00
Fedor Isakov 07a5345d9b Rewriting rule templates to better support java typesystem 2015-04-13 16:47:24 +02:00
Fedor Isakov 29e6d168b8 Nice printing of Ast nodes to make debugging of typechecking rules easier 2015-04-13 16:47:21 +02:00
Fedor Isakov bdbfd508d9 Updated the IDEA project to run the handler 2015-04-13 16:47:19 +02:00
Fedor Isakov ce6e138187 Introduced naming context for logical instances to avoid name clashes when recusively processing AST 2015-04-13 16:47:18 +02:00
Fedor Isakov 4c1cbb34bc Added the missing dependency required to build the editor 2015-04-13 16:47:18 +02:00
Fedor Isakov 3c27aa79e1 More strict checking of rules, fixing minor problems reported by model checker, minor update of the rules runner 2015-04-08 15:40:32 +02:00
Fedor Isakov 72a3aac2e2 Collect templates for required nodes. Enable rule templates to tell what nodes are to be walked in addition to the one passed as parameter. 2015-04-08 15:40:31 +02:00
Fedor Isakov f2a5220ae1 Another rule parameter block: bound value (à la let binding). Allows to extract a value to a parameter. 2015-04-02 20:01:31 +02:00
Fedor Isakov f54c0783c4 Extracted sample code to a separate solution. Support for marking the types on arbitraty code 2015-04-02 13:16:22 +02:00
Fedor Isakov ced411a708 One action to collect rules, make and run. Mark all types in the editor. Rewrote launching of typechecking constraints 2015-03-31 13:02:51 +02:00
Fedor Isakov b4bfb30102 Patch JCHR to avoid problems with accessing package local fields of Tuple's superclass 2015-03-31 13:02:51 +02:00
Fedor Isakov 85d1746ea5 Combining collecting rules + making + running constraints in one action 2015-03-31 13:02:51 +02:00
Fedor Isakov e5a3fccfa6 Made the typechecking sample compute 2015-03-31 13:02:47 +02:00
Fedor Isakov f4043b8206 Updated the unification lib 2015-03-31 13:02:47 +02:00
Fedor Isakov 19d9048cb3 The TreeLogicVar can act both as a VAR and as a REF depending on whether it's bound, fixing tests 2015-03-31 13:02:35 +02:00
Fedor Isakov 375a15e172 Support generating the code with JRE 1.8 2015-03-25 16:33:15 +01:00
Fedor Isakov 07ecdb5651 Updated the unification lib 2015-03-24 16:28:19 +01:00
Fedor Isakov fce38c6cdd Updated the typechecking templates to use the modern construct for list 2015-03-24 16:27:12 +01:00
Fedor Isakov 77479a076f Support for variables matching a list, getting rid of obsolete code, some refactoring 2015-03-24 16:27:08 +01:00
Fedor Isakov f380297ccb Adopted the new unification solver API 2015-03-22 15:19:16 +01:00
Fedor Isakov c337fe0039 Updated the unification lib 2015-03-22 15:19:12 +01:00
Fedor Isakov 308024f8df Added objenesis library to the IDEA module to support debugging 2015-03-13 16:04:35 +01:00
Fedor Isakov 05dab11deb Calculate system hash of a tree logical, avoid ininite recursion (eg. in recursive types) 2015-03-13 16:03:57 +01:00
Fedor Isakov fbf384dc7e Updating the typechecking templates to support classifier's node ID 2015-03-13 16:02:39 +01:00
Fedor Isakov 7e3131a697 Supporting logical variables of different types (currently only TreeLogical and StringLogical) 2015-03-13 14:45:04 +01:00