Fedor Isakov
04416a927b
Make all expand template params optional
...
As part of migration add NullLiteral as init field to all
expand macro parameters so that the generation runs smoothly.
The user is then expected to remove init fields for required params.
2023-10-16 11:55:32 +02:00
Fedor Isakov
fc8451e63d
Run migration
2023-10-13 18:13:09 +02:00
Fedor Isakov
20a0bedd81
Refactor call macro cstr: keep arguments in binding list
...
The idea is to have default parameters in (regular) macro definition.
Refactoring and corresponding migration.
2023-10-13 18:13:09 +02:00
Fedor Isakov
8d9b3d4730
Fix behaviour method signature
2023-10-13 18:13:09 +02:00
Fedor Isakov
fd0430a6eb
Better editors and substitute actions for macroses
...
Now all invocations of a macro start with "apply" keyword.
An "expand" macro has an additional parameter after "with" -- the input.
2023-10-13 18:13:09 +02:00
Fedor Isakov
607e54a290
Macro fails to generate if logical or parameters are inconsistent
...
In addition to a typechecking rule make generator report an error.
2023-10-13 18:13:09 +02:00
Fedor Isakov
de9fd05c45
Intentions and methods to facilitate working with macros
2023-10-13 18:13:09 +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
4e77530d20
Drop usages of deprecated feature: ApplicableConcept
2023-10-13 18:13:08 +02:00
Fedor Isakov
f3010743c1
Migration: FixExpandMacroTemplate
2023-10-13 18:13:08 +02:00
Fedor Isakov
530ace6399
Rework editor for expand macro template and prototype
...
Expand macro prototype: "virtual macro".
Expand macro template: "override".
Override macro displays parameters declared in the prototype as R/O.
Introduce "usages" of prototype parameters to serve as local anchors;
this avoids problems with generation.
The existing code is going to work as before, but marked as erroneous
until migrated.
2023-10-04 12:52:09 +02:00
Fedor Isakov
504ae89af3
Consider only LogicalVars when looking for arguments to LateExpr
2023-09-28 12:10:39 +02:00
Fedor Isakov
a85d570604
Enable entering DataNodeExpr within LateExpr
2023-09-28 12:10:39 +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
0e2c64e587
Fix resolve info
2023-06-12 12:20:35 +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
6150702e92
Drop references to template dropped upstream
2023-05-03 10:50:10 +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
bb47403b0c
Fix generating of synth recover terms table
2022-08-22 11:19:59 +02:00
Fedor Isakov
26a3bd12dd
Fix how output models are searched for checkpoints
2022-08-16 18:11:49 +02:00
Fedor Isakov
40dd4bb31a
Avoid dependency on a non-runtime solution
2022-07-28 10:30:38 +02:00
Fedor Isakov
83daafe180
Fix feature reference constraint
2022-07-28 10:30:38 +02:00
Fedor Isakov
f9eb52a60f
Introduce checkpoint for typechecking "strut" templates
...
The templates that typechecking relies upon are generated
into the user model as synthetic constructs. These later
need to be discovered by the generator to establish
correct references.
2022-07-28 10:30:38 +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
837f7303a8
Fix test language broken after refactoring
2022-06-18 15:56:54 +02:00
Fedor Isakov
186c7b6a28
Fix auto-recovery of types with expect/assign/recover pseudo-constraints
2022-06-18 12:53:14 +02:00
Fedor Isakov
dd0b9b2842
Intention to convert term table to types term table
2022-06-18 12:53:14 +02:00
Fedor Isakov
77eb3f30c7
Implement a missing BH method
2022-06-13 11:11:57 +02:00
Fedor Isakov
b46373701f
WIP Reorganizing code
2022-06-08 10:23:43 +02:00
Fedor Isakov
88aaf7898c
Ensure only relevant aspects selected for certain queries
...
While check/checkTypeOf queries are required to
process a whole root, other types of queries
can be sensitive to what aspects to include in
the processing.
Aspects are sorted in strongly-connected components,
among which the relevant one is selected.
2022-06-06 13:00:52 +02:00
Fedor Isakov
585f8f57f5
Switch to generating FQ names for constraint symbols
2022-05-26 12:52:25 +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
874a2a4b4e
Ensure rule tags have unique group name
2022-05-25 13:49:11 +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
ddce418ba4
Ensure new list is initialized when recovering
2022-05-03 10:26:43 +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
d8a180bfe2
Test list feature recovery
2022-02-08 10:09:40 +01:00
Fedor Isakov
2f34591b0b
Support list feature in recovery
2022-02-08 10:09:40 +01:00
Fedor Isakov
2e5d73b31e
Add icons for typechecking roots and the aspect
2021-11-25 18:09:22 +01:00
Fedor Isakov
d7f54a35fb
Minor editor fixes
2021-11-25 12:07:43 +01:00