Commit Graph

102 Commits

Author SHA1 Message Date
Fedor Isakov 49a381936d Enable to specify custom matching strategy when asserting that locally inferred types are the same. 2019-02-02 16:09:39 +01:00
Fedor Isakov dc1965fdc9 Introduce a test for running model checker on all models in the project as a part of CI. 2019-01-31 11:30:02 +01:00
Fedor Isakov cc4b335286 Introduce checking for instances of RuntimeErrorType during tests. Refactor test typechecking launcher. 2019-01-04 17:47:44 +01:00
Fedor Isakov b4693aac3c Switch to the new conreactor version. 2018-12-28 11:57:27 +01:00
Fedor Isakov 82b409cb86 Fix SubstituteUtil to match pattern using equals() instead of unification. Tests for SubstituteUtil. 2018-12-14 13:35:36 +01:00
Fedor Isakov f0bb068750 Fix instances of removed concepts and broken API calls after migration to 2018.3. Rebuild project. 2018-11-28 16:48:59 +01:00
Fedor Isakov 6778fab625 Use index to filter nodes on which FailureHandler should report error and clear failed state. 2018-11-20 22:39:30 +01:00
Fedor Isakov 3aeb5a8863 Fix unnecessary dependencies of coderules generator module.
Add missing annotation language to plugin bundle.
2018-11-05 14:49:59 +01:00
Fedor Isakov 06f95c5870 Update build solution to reflect latest changes. 2018-11-04 13:10:40 +01:00
Fedor Isakov 075b34e24d Replacing usages of deprecated concepts. Minor fixes. 2018-09-11 17:01:45 +02:00
Fedor Isakov 6287a1147e Fix missing imports 2018-09-11 12:20:50 +02:00
Fedor Isakov d26805db7d Switch to the latest version of reactor lib 0.9.1 2018-08-03 11:48:36 +02:00
Fedor Isakov e2a68b4012 Fixes necessary for compatibility with MPS 2018.2 2018-07-22 16:51:10 +02:00
Fedor Isakov 0bacffb611 Move type setting operation to typechecking lang. 2018-07-22 11:09:49 +02:00
Fedor Isakov c7cc97fffb Rename reporting runtim solution. 2018-07-21 13:29:40 +02:00
Fedor Isakov ea9919f38a Bring the hierarchy of DataForm concepts in line with the runtime.
Merge DataForm constructors into logic language.
Repackaging logic runtime.
Drop obsolete code.
2018-07-21 13:29:22 +02:00
Fedor Isakov e29a0576e2 Rename the root project and artifacts to "coderules". 2018-07-18 15:54:52 +02:00
Fedor Isakov 77b578d30c Add a dependency on workflow.preset to in order to fix command-line build. Rename ant targets when importing to clearly separate tasks.
https://youtrack.jetbrains.com/issue/MPS-25921
2018-07-17 15:09:47 +02:00
Fedor Isakov c12bf0d96a Ensure extracted baseLanguageExt stuff can be built from command line. 2018-07-17 15:09:47 +02:00
Fedor Isakov 8528876d2a Include build module into deployed set. 2018-07-16 19:05:17 +02:00
Fedor Isakov 473644e389 Extract baseLanguageExt and its related tests to a separate project. 2018-07-16 18:56:36 +02:00
Fedor Isakov 4f063cd261 Update test language for typechecking. Re-implement all typechecking tests using test language. Drop dependency on baseLanguageExt and samples. 2018-07-16 16:39:13 +02:00
Fedor Isakov d2de6eea33 Return baseLanguagExt as dependency of test modules in order to fix tests. 2018-07-14 17:22:32 +02:00
Fedor Isakov 79c02d2b00 Cleaning up dependencies in an attempt to produce a workable build.xml that doesn't break gradle. 2018-07-14 17:22:14 +02:00
Fedor Isakov 2b2fa47b57 Extract baselanguageExt sample into separate project. 2018-07-14 17:22:07 +02:00
Fedor Isakov 92c6ba3e12 Restructuring the project: consolidate code, moving samples away. 2018-07-14 17:22:07 +02:00
Fedor Isakov 9f372d1ad6 Fix a build dependency issue. 2018-07-10 14:33:12 +02:00
Fedor Isakov 36cc3753e2 Codeflow analysis for local var live/used status. (alternative implementation, faster). 2018-07-10 14:15:28 +02:00
Fedor Isakov fb27f1ddf2 Ensure eval() supports void and non-boolean expressions. Allow eval in guard. Fix generation of operations from collections lang. 2018-07-10 14:14:08 +02:00
Fedor Isakov b048701093 Fix build dependencies. 2018-06-21 11:52:35 +02:00
Fedor Isakov 2cc6d44705 Extract reusable stuff from typechecking UI plugin into coderules UI. 2018-06-16 13:08:24 +02:00
Fedor Isakov 67b9e5a372 Fix build broken after moving baselanguageExt. 2018-06-16 12:45:54 +02:00
Fedor Isakov b4d0ab73bb Initial boilerplate support for launching controlflow queries. Some refactorings to further uncouple coderules-related stuff. 2018-06-15 14:55:44 +02:00
Fedor Isakov db04f57c41 Move baselanguage-related stuff to another location within the project. 2018-06-15 11:09:01 +02:00
Fedor Isakov a74f00f688 Introduce controlflow language and corresponding solutions as another example of applying code rules in practice. 2018-06-14 16:19:06 +02:00
Fedor Isakov 20c107e428 Introduce j.m.lang.typechecking lang to provide typechecking aspect-related services. Abstract away aspect generation/discovery logic to make it reusable. 2018-06-14 15:02:22 +02:00
Fedor Isakov fda586c45c Extract generic support for launching code rules into a separate plugin solution. 2018-06-13 14:34:41 +02:00
Fedor Isakov c6a3b94f9a Bump up plugin version to 0.5. 2018-06-12 18:12:05 +02:00
Fedor Isakov a8e6c565b5 Rename the language and runtime solution: typesystem2 -> coderules. Move typechecking-related stuff to typechecking solution. Reorganize modules, delete obsolete stuck files. 2018-06-12 18:00:30 +02:00
Fedor Isakov 760ec4e736 Fix a dependency problem. 2018-06-12 13:06:30 +02:00
Fedor Isakov 2de4d69781 Introduce QueryKind. Fix the kinds of typechecking queries. Avoid directly linking the queries in types aspect. 2018-06-04 18:45:08 +02:00
Fedor Isakov 49296df88f Fix the dependencies to avoid breaking the build. 2018-05-24 12:47:25 +02:00
Fedor Isakov ce688b3672 Refactor ProgramProducer to use query templates.
Switch to using queries to launch program stages.
Refactor typesystem2 lang and runtime to break queries into stages.
Rename ChrProgram to LogicProgram.
2018-05-24 11:54:01 +02:00
Fedor Isakov e056befb4e Establish module dependencies that make sense. 2018-05-17 12:07:50 +02:00
Fedor Isakov 1b564b3057 Implementing QueryTemplate API and support in the evaluation environment. 2018-05-17 12:07:50 +02:00
Fedor Isakov c01e1d76c9 Refactoring: moving term-related concepts into a separate language, use dataform nomenclature instead of term where possible. Create migration. 2018-04-19 16:30:23 +02:00
Fedor Isakov 487ddddff3 Switched to MPS 2018.1 2018-04-10 14:22:48 +02:00
Fedor Isakov bfe74e3c7c Bumped up plugin version to 0.4 2018-04-05 12:40:17 +02:00
Fedor Isakov f730641327 Extract "reporting" solution and interface. 2018-04-04 10:52:14 +02:00
Fedor Isakov e30c5e268b Extend typesystem2 lang with "assign type" operation. TypecheckingSessionSolver to be used for reporting the calculated type. Manual migration required. 2018-04-03 15:16:14 +02:00