Commit Graph

165 Commits

Author SHA1 Message Date
Fedor Isakov 44019dca79 Typechecking templates: remove usages of the "typeConcept" 2017-02-03 11:15:23 +01:00
Fedor Isakov 4430488f26 New recover types handler (unfinished) 2017-02-03 11:15:01 +01:00
Fedor Isakov 5b6590df9d Refactoring: switch to the updated interface methods of SessionSolver. Extract invocation arguments calculation from the predicate/constraint. 2017-02-03 11:15:00 +01:00
Fedor Isakov b789d6d240 Refactoring: getting rid of the dependencies on SessionSolver soon to be updated. 2017-01-04 10:44:08 +01:00
Fedor Isakov 31e15fcaa9 Typechecking templates: annotate the handlers with the primary constraints. Moderate pocessing speedup. 2016-12-28 12:48:47 +01:00
Fedor Isakov f5ed430cd9 Build CLP program with handlers instead of rules. Minor rename refactoring. 2016-12-23 17:42:20 +01:00
Fedor Isakov 5bb2d9c7fa Drop the deprecated postProcess and other obsolete features. 2016-12-23 17:40:04 +01:00
Fedor Isakov 1c7e72db40 Typechecking templates: sort the rules so that abstract come after the concrete for post-processing, and before otherwise. 2016-12-23 17:40:02 +01:00
Fedor Isakov 8c3728aa74 Refactor typesystem2 runtime and generator to support handler templates referred to by rule templates. Enable to drop "postProcess" flag on the rules. 2016-12-23 17:26:25 +01:00
Fedor Isakov 641ac6616c Support non-treeform logical values. 2016-12-15 14:11:22 +01:00
Fedor Isakov c08cfbc173 Typechecking templates: optimizing processing of constraints by using more optimal rules order. 2016-12-14 17:08:32 +01:00
Fedor Isakov fe5d24ea35 Update all external jars. 2016-12-14 17:08:31 +01:00
Fedor Isakov c796e43d35 Typesystem2 runtime: refactoring the pattern support in type template. 2016-12-12 16:02:13 +01:00
Fedor Isakov 2c5321f635 Avoid running the evaluation with profiling when not tracing. 2016-12-12 16:02:13 +01:00
Fedor Isakov a5a05531b4 Typechecking templates: Refactoring and straightening up the typesystem, cleaning up and dropping unused rules and constraints.
Refactoring bounds, containment.
Using new type construct for non-patterns.
Using new type construct for non-patterns.
New features: support for boxing, array conversion, capture classifier type parameters.
2016-12-12 16:02:12 +01:00
Fedor Isakov 9548ef0e1f Catch VirtualMachineError while evaluating the program to avoid IDE errors on stack overflow. Avoid failiure on type recovery. Report problems arised while applying templates. Timeout for program evaluation. Report profiling even if the evaluation fails. 2016-12-12 16:02:12 +01:00
Fedor Isakov d2aa5bad29 Refactor NodePrinter to not be dependent on the BL types. Better representation of logicals and values in the activation trace. Use the logical snapshot's value. Get rid of type formatter. 2016-11-26 13:10:18 +01:00
Fedor Isakov cd6b30deed Recovery creates detached nodes by default. 2016-11-16 16:58:57 +01:00
Fedor Isakov 5f802cf6cf Typechecking templates: simplify the code. 2016-11-16 15:44:35 +01:00
Fedor Isakov 98b4a731e6 Fix the build scripts. 2016-11-11 14:22:44 +01:00
Fedor Isakov aa9826e2e3 Typechecking facade. Tests. 2016-11-10 16:35:03 +01:00
Fedor Isakov 57bfd6433e Refactoring out the typechecking code from the sample plugin. 2016-11-07 15:07:16 +01:00
Fedor Isakov abce7d2cb7 Use the SRepository interface instead of Project in typechecking aspect 2016-11-02 12:21:10 +01:00
Fedor Isakov c21df9b8a2 Migrated to the latest MPS build. 2016-10-31 10:03:31 +01:00
Fedor Isakov 5692b4ad86 Displaying the rendered type node in the tooltip 2016-10-31 10:03:13 +01:00
Fedor Isakov 40efd1accf Add a test for a big java root. 2016-10-20 13:01:05 +02:00
Fedor Isakov 9b7323b40c Typechecking templates: basic support for primitive types. 2016-10-20 12:55:48 +02:00
Fedor Isakov 6e4284e61c Fix NodePrinter in order to avoid failures while typechecking. 2016-10-20 12:55:03 +02:00
Fedor Isakov 47f3d61b28 Typechecking templates: adding new types, a workaround for raw classifier types. 2016-10-19 16:09:41 +02:00
Fedor Isakov 6abca3f4e9 Attempting to make tests run from the generated build script. 2016-10-19 11:22:59 +02:00
Fedor Isakov 7621d73208 Fix running tests out-of-process (bad dependencies causing the classloader to fail) 2016-10-13 16:01:33 +02:00
Fedor Isakov 99a564dac4 Typechecking templates: fix the subtyping/substitution logic, bounds check, LUB 2016-10-13 13:37:58 +02:00
Fedor Isakov 16a8541b3e Refactor error reporting while applygin typechecking templates. Trigger headless rules with the "main" constraint instead of merging everything into one huge conjunction. 2016-10-06 11:48:06 +02:00
Fedor Isakov cb86d9b120 Find applicable templates feature. 2016-10-04 15:59:18 +02:00
Fedor Isakov 67a84b08f6 Refactor the templates application code. Simplifying TypecheckingHelper. 2016-10-04 15:58:11 +02:00
Fedor Isakov 25bddf060b Toolbar buttons expandAll/collapseAll 2016-09-30 18:10:18 +02:00
Fedor Isakov b3dd169531 Typechecking templates: keep the node reference in the type term instead of the id 2016-09-30 18:10:18 +02:00
Fedor Isakov 91f934064e Fix hyperlink rendering in the activation tree; reference extraction from id; icons rendering on the toolbar 2016-09-30 18:09:51 +02:00
Fedor Isakov f91c4aac69 Fix build problems, model imports, minor problems. 2016-09-30 18:07:50 +02:00
Fedor Isakov 36b721fbe0 Type templates: implementing recovery feature. 2016-09-19 13:01:23 +02:00
Fedor Isakov dd1f2f28a5 Refactoring and cleaning up type/rule template API, introduce RecoverySession. Type table has recovery feature. Return type terms from the sample typechecking. Simple test. 2016-09-19 12:17:40 +02:00
Fedor Isakov e17f7405a3 Moving tests specific to sampleLang/types to separate test solution. 2016-09-17 14:57:56 +02:00
Fedor Isakov 198fb8ac23 Avoid reporting assertion error on extracting the text from root nodes. 2016-09-17 14:57:56 +02:00
Fedor Isakov b03e8578e5 Resave all models containing obsolete resolve info. Fix all mentions of the old api class. 2016-09-17 14:57:55 +02:00
Fedor Isakov 9312b7d30e MPS suddenly decided to remove references to the deleted solution. 2016-09-01 11:03:36 +02:00
Fedor Isakov 414a60fffc Moving the reactor API to the separate project.
Switch to java_stub models for the reactor api.
2016-09-01 11:03:35 +02:00
Fedor Isakov 4b6ac48a41 Merging TreeForm model into the reactor solution.
Move unification lib tnd treeform api model to reactor solution.
Remove obsolete solution.
2016-09-01 11:03:35 +02:00
Fedor Isakov a27cdecc67 Renamings and refactorings in the logic api.
Use TreeForm name for the tree abstraction.
Rename Atom, Func etc. and the usages.
2016-09-01 11:03:21 +02:00
Fedor Isakov 9064c6bbb8 Minor fixes, code restructuring, fixing the dependencies, removing obsolete file. 2016-08-30 17:04:11 +02:00
Fedor Isakov 2eae603d40 Removing hard links to models used by the typechecking plugin. 2016-08-29 14:46:57 +02:00