Commit Graph

986 Commits

Author SHA1 Message Date
Fedor Isakov 0ddd0fcaa1 Introduce "principal" flag for rule templates. A principal template is excluded from processing as "required". 2018-07-02 11:27:55 +02:00
Fedor Isakov 387e8aab31 Updated solution dependency. 2018-06-24 23:02:34 +02:00
Fedor Isakov 698ea102b2 Switch to the latest reactor release. 2018-06-24 23:02:34 +02:00
Fedor Isakov ab5e641c6b Beautifying coderules editor. 2018-06-21 13:45:20 +02:00
Fedor Isakov b048701093 Fix build dependencies. 2018-06-21 11:52:35 +02:00
Fedor Isakov 6080b5dc5e Sample controlflow analysis using code rules. 2018-06-21 11:41:29 +02:00
Fedor Isakov 784b4ca810 Support launching control flow query with trace. Fix navigating to source location from trace view. Add shortcuts to controlflow actions. 2018-06-21 11:41:11 +02:00
Fedor Isakov a940e7260a Switch to the latest reactor release. 2018-06-21 11:41:11 +02:00
Fedor Isakov 57cb04b3f8 Highlight results of control flow analysis. Drop dead code. 2018-06-16 13:22:27 +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 74a5d9d441 Auto-updated descriptors. 2018-06-16 12:53:46 +02:00
Fedor Isakov 67b9e5a372 Fix build broken after moving baselanguageExt. 2018-06-16 12:45:54 +02:00
Fedor Isakov 0d9190d739 Simplifying rules launching: get rid of CollectTypesRule. 2018-06-16 12:35:57 +02:00
Fedor Isakov 4dcb1b7ee7 Minor refactoring: rename MarkPlugin to HighlightingPlugin, make the API more convenient with a task parameter object. 2018-06-15 17:08:14 +02:00
Fedor Isakov 1c1f5b1d1f Introduce sample codeflow into baseLanguageExt. 2018-06-15 14:56:17 +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 ecdaa8a486 Drop deprecated and obsolete runtime classes. 2018-06-12 13:39:39 +02:00
Fedor Isakov 760ec4e736 Fix a dependency problem. 2018-06-12 13:06:30 +02:00
Fedor Isakov 3f67662683 Dropped deprecated constructs in typesystem2 lang. 2018-06-12 13:01:44 +02:00
Fedor Isakov a58caa24ef Drop support for HandlingStage. Stages no longer necessary in presence of queries. 2018-06-11 19:15:46 +02:00
Fedor Isakov 4a8e0bd846 Deprecate "stage" feature of handlers and query templates. 2018-06-11 15:06:23 +02:00
Fedor Isakov 76c17095ea Minor refactorings in typesystem2 runtime/templates. 2018-06-11 15:02:04 +02:00
Fedor Isakov 494fecff51 More deprecated constructs in typesystem2 language and runtime. 2018-06-11 13:48:07 +02:00
Fedor Isakov c43c921926 Fix editing of RuleTemplate's "exactly" property. 2018-06-08 12:30:56 +02:00
Fedor Isakov 4e64aa7d55 Deprecated obsolete constructs to be migrated to new ones. 2018-06-07 16:37:56 +02:00
Fedor Isakov 3698fdd1a5 Typechecking templates: manually migrated hard rules to rule templates. 2018-06-07 16:31:02 +02:00
Fedor Isakov 3310b6cd12 Sample lang: automatically migrated simple rules to rule templates. 2018-06-07 15:48:32 +02:00
Fedor Isakov 6707f67fca Typechecking templates: automatically migrated simple rules to rule templates. 2018-06-07 15:48:19 +02:00
Fedor Isakov 2e13e86112 Migration to replace simple rules with rule templates. RequireAll statement. Minor generator fixes. 2018-06-07 15:46:17 +02:00
Fedor Isakov dfa819c7d6 Fix show type action, drop obsolete code. 2018-06-06 12:44:33 +02:00
Fedor Isakov 655f39987b Fix not reloadable templates by listening to SRepository (moduleRemoved). 2018-06-06 12:31:31 +02:00
Fedor Isakov c84e86bbb2 Use correct query kind in testlang. 2018-06-06 12:30:56 +02:00
Fedor Isakov eb75184949 Typechecking templates: switch to single stage. Use query's conjunction to order check and recover. 2018-06-06 11:34:45 +02:00
Fedor Isakov acbe631b57 Finally support query parameters. Test "CONVERTS" query. 2018-06-05 15:10:43 +02:00
Fedor Isakov bd99befdb6 Fix a couple of bugs in template application logic. 2018-06-05 15:09:33 +02:00
Fedor Isakov c0477d8686 Typechecking templates: rename "SubtypeOf" query to "ConvertsTo". Use the "converts" constraint. 2018-06-05 15:07:38 +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 44fb682ee1 Sample test language. 2018-05-24 12:00:44 +02:00
Fedor Isakov 26e6df3983 Typechecking templates: drop auto rules that launch "checkAll" and "recoverAll", switch to queries instead. 2018-05-24 11:54:02 +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 bc1f865eeb Switch to using queries in UI actions. Rule application accepts only list of nodes, drop the "root" use case. 2018-05-17 12:07:51 +02:00
Fedor Isakov e056befb4e Establish module dependencies that make sense. 2018-05-17 12:07:50 +02:00
Fedor Isakov b4b56f20b9 Typechecking templates: default query "main". 2018-05-17 12:07:50 +02:00