Commit Graph

267 Commits

Author SHA1 Message Date
Fedor Isakov 6e343fe17d Enhance AbstractCoderulesManifest with priority() method 2024-08-29 13:08:28 +02:00
Fedor Isakov d8bc7fdfb5 Refactor Effect API and usages: drop any access to values; ensure cleaner contract
- interface Effect becomes a class AbstractEffect
 - hasValue dropped
 - getValue/allValueKeys have been made protected
 - withValue(s) defines clear contract for using the values in effects
2024-08-21 18:17:27 +02:00
Fedor Isakov 99c3fdf9d0 Tentatively introduce TracePredicate to trace call/expand macros; MPSCR-137 2024-08-13 16:43:17 +02:00
Fedor Isakov 300c569dff Consistently use "origin" instead of "target" 2024-08-05 17:35:39 +02:00
Fedor Isakov c63f0479d1 Refactor code to simplify and cleanup; drop obsolete stuff 2024-08-05 17:35:38 +02:00
Fedor Isakov 0debee556c Switch to new conreactor API; minor code cleanup 2024-08-05 17:35:38 +02:00
Fedor Isakov 1146935e8d Simplify code: drop InvocationContext from LateExpression 2024-08-02 14:02:14 +02:00
Fedor Isakov 95a78a3474 Deprecate CopyItem and CopyUtil 2024-08-02 13:43:37 +02:00
Fedor Isakov b2c0474afc Simplify code: drop LogicalContext from SubstituteUtil 2024-08-02 13:36:06 +02:00
Fedor Isakov e33c846314 Ensure aspect lookup cache is update on imports change 2024-08-02 09:57:55 +02:00
Fedor Isakov 846f4db8fc Fix used languages cache in AspectLookup 2024-07-31 17:56:52 +02:00
Fedor Isakov 7c1a2a3873 More debug logging for aspect clique 2024-07-31 16:39:43 +02:00
Fedor Isakov 3147893795 Drop deprecated methods 2024-07-31 16:10:02 +02:00
Fedor Isakov 3ee2e24c50 Drop support for multiple aspect cliques from CliqueBuilder 2024-07-31 15:54:13 +02:00
Fedor Isakov 51e17ed549 Refactor AspectLookup to return a single clique 2024-07-31 15:06:15 +02:00
Fedor Isakov 097ca5aed5 Run all user predicates from a read action 2024-07-31 13:18:52 +02:00
Fedor Isakov c9e3374540 Implement support for "tellPattern" trace event 2024-07-22 14:14:16 +02:00
Fedor Isakov 0830a34c1b Support navigating to constraint and predicate declarations from trace view 2024-07-19 16:39:57 +02:00
Fedor Isakov e64677041e Cleanup code and drop deprecated stuff 2024-07-18 11:01:24 +02:00
Fedor Isakov ae7c4ab56d Switch to using model system ident instead of SModelId for cache
See MPS-37545.
2024-07-15 13:32:52 +02:00
Fedor Isakov 1c170f8e05 Minor code cleanup 2024-07-11 15:09:35 +02:00
Fedor Isakov 0aad66b951 Automatic migrations 2024-07-04 18:17:56 +02:00
Fedor Isakov 4ce08f4b99 Refactor project structure and reduce the number of modules 2024-07-04 18:17:56 +02:00
Fedor Isakov 87bb67cee3 Drop usages of SessionToken 2024-06-21 22:44:23 +02:00
Fedor Isakov a19d02b8ae Switch initialization to use ModuleActivator; drop unused imports 2024-06-16 16:11:38 +02:00
Fedor Isakov b053cd7c3e Drop the rest of "incremental" stuff 2024-06-13 12:22:57 +02:00
Fedor Isakov 5fafd1b0dc Code review: mark things to be done 2023-10-13 18:13:08 +02:00
Fedor Isakov 87a1b413d1 Ensure ancestors of a changed node are in changeset
This fixes incremental update in some situations.
2023-10-13 18:13:08 +02:00
Fedor Isakov f3010743c1 Migration: FixExpandMacroTemplate 2023-10-13 18:13:08 +02:00
Fedor Isakov 3cf666e633 Apply migrations and make project 2023-07-31 12:57:24 +02:00
Fedor Isakov e5538bc39f A bunch of refactorings and cleanups in trace view
- cleanup the code, rename symbols for better readability
 - drop dead code
 - support for optionally showing empty template trace nodes
 - display node path for source nodes
2023-06-21 15:27:05 +02:00
Fedor Isakov 6a849f82f2 Apply migrations and rebuild project 2023-06-12 12:01:02 +02:00
Fedor Isakov 11a1037860 Minor refactoring and code cleanup 2023-06-12 12:01:02 +02:00
Fedor Isakov 08733317ef Null guard. MPSCR-126 2023-02-23 17:29:02 +01:00
Fedor Isakov d531c6a5ad Run Migration Assistant 2023-02-22 13:52:02 +01:00
Fedor Isakov ad3ea9d63d Apply all migrations from 2022.2 2022-11-21 11:25:13 +01:00
Fedor Isakov 8f42a025bc Rewrite topo sorting of macro tables 2022-09-08 14:07:06 +02:00
Fedor Isakov 6030332107 Introduce profiling into program produce/evaluation steps 2022-09-02 15:49:30 +02:00
Fedor Isakov 33b472f560 Switch to using plain FQN strings to identify templates
SNodeReference are too unreliable to be used.
2022-07-28 10:30:38 +02:00
Fedor Isakov 4bd681f3ee Fix support for require/requireAll statements in queries, MPSCR-108 2022-07-15 19:46:32 +02:00
Fedor Isakov b46373701f WIP Reorganizing code 2022-06-08 10:23:43 +02:00
Fedor Isakov c112a59116 Switch to collection of QueryTemplate instead of single instance
The deisgn decision to have only one instance of QueryTemplate
leads to the necessity to keep AspectClique separated for
every "typesystem". Whereas QueryTemplate are really perfectly
composable, and thus only one AspectClique is neeeded.

Also drop a rudimentary unused feature.
2022-05-26 09:58:31 +02:00
Fedor Isakov b6c190c35c Introduce ruleInput parameter to call macro
Accessing the rule input allows to track dependencies
necessary for correctly updating the feedback.
2022-05-09 17:02:12 +02:00
Fedor Isakov bd249c5d0c Drop obsolete feature: incremental specification 2022-04-21 16:05:31 +02:00
Fedor Isakov 1d54b8ffeb Fix NPE on first update of empty rules query 2022-02-17 17:05:41 +01:00
Fedor Isakov 98fef4c95d Fix NPE on newRules array being empty 2022-02-15 10:35:53 +01:00
Fedor Isakov 2d52921561 Fix and optimize dependencies 2021-09-22 17:08:25 +02:00
Fedor Isakov 17c2c73aeb Minor code cleanup 2021-09-22 17:08:25 +02:00
Fedor Isakov b122872890 Refactor Result to be able to clear the cause 2021-09-21 17:54:51 +02:00
Fedor Isakov 2425fe933a Ensure dependency is tracked for nested expand macro applications
Expand macro passes the rule's input to nested macro calls.
This adds the macro input as the dependency of the rule's input.
As a result, incremental processing starts working in some cases.
2021-06-30 18:25:46 +02:00