Commit Graph

898 Commits

Author SHA1 Message Date
Fedor Isakov 22fb818142 Simplify typechecking of SNodeTypeCastExpression, drop deprecated stuff 2022-11-21 10:50:00 +01:00
Fedor Isakov 5abf1dbce7 Ensure types extend BL's Type term 2022-11-21 10:50:00 +01:00
Fedor Isakov 9b341c2e2d Ensure types extend BL's Type term 2022-11-21 10:50:00 +01:00
Fedor Isakov 3f722f6fbd Drop creating abstract concept for open type 2022-11-21 10:50:00 +01:00
Fedor Isakov 8c0771769a Update modules.xml for all recently added modules 2022-11-21 10:49:59 +01:00
Fedor Isakov 816dcc5f00 Types for j.m.l.methodReferences languange 2022-11-21 10:49:59 +01:00
Fedor Isakov 0e6a1103c7 Types for j.m.l.extension languange 2022-11-21 10:49:59 +01:00
Fedor Isakov ec0167feba Types for j.m.l.sharedConcepts languange 2022-11-21 10:49:59 +01:00
Fedor Isakov ff1d53a7ab Fix sequence type construction (passing correct unifier) 2022-11-21 10:49:59 +01:00
Fedor Isakov 0cdad6687c Introduce nothing() term, ensure it is assigned by default instead of type() 2022-09-08 14:07:06 +02:00
Fedor Isakov 8c9f3c8afa Fix closure type inference 2022-09-08 14:07:06 +02:00
Fedor Isakov 4aaf66d4cb Support for LocalPropertyReference 2022-09-08 14:07:06 +02:00
Fedor Isakov 35288dc3e5 Fix conversion in smodel lang 2022-09-08 14:07:06 +02:00
Fedor Isakov 7c3c6968b0 Fix type recovery in logic lang 2022-09-08 14:07:06 +02:00
Fedor Isakov ce71b0f987 Rebuild build scripts 2022-09-02 16:42:08 +02:00
Fedor Isakov 4070194d01 Bump up plugin versions 2022-09-02 16:11:00 +02:00
Fedor Isakov 83e273da73 Fix tests by caching Config instance
Tests are launched within a context that is unable
to perform normal MPS classloading, so we resort to
caching the (singleton) instance of Config coming from
an (IDEA) plugin to use it later.
2022-08-27 19:39:14 +02:00
Fedor Isakov 78f847747b Drop unstable hacks, simplify code 2022-08-26 13:58:22 +02:00
Fedor Isakov a40d74c600 Fix project build and loading scheme
Source files for ideaplugin are now compiled externally.
2022-08-26 10:39:20 +02:00
Fedor Isakov 299d9a4fd8 Update build scripts to fix tests launching 2022-08-25 12:59:36 +02:00
Fedor Isakov d2ca45aa02 Extract bootstrap code to idea plugin; CR options to become app-level
CR typechecking options are now application-level.

The solution j.m.c.ideaplugin contains the code responsible
for accessing and setting the options. This solution is loaded
as IDEA plugin on deploy and as regular module in source project.

Also merge code from two modules into j.m.c.typechecking.
2022-08-25 12:59:36 +02:00
Fedor Isakov fe3a38d90f Rebuild project 2022-08-17 11:40:58 +02:00
Fedor Isakov c4a157bf4d Bump up plugin versions 2022-08-16 18:11:49 +02:00
Fedor Isakov 29c9a50fa9 Use built-in BL's intersection type instead of meet type 2022-08-16 18:11:49 +02:00
Fedor Isakov ab2a1b6499 BL Types: Disable overriding methods check, MPSCR-115
This check doesn't belong to the type system, is
currently implemented on top of it as a "check" rule.
2022-08-01 14:11:38 +02:00
Fedor Isakov ba7411abfa Bump up plugin version and rebuild build scripts 2022-07-28 10:37:36 +02:00
Fedor Isakov 451529aa08 Cleanup imports 2022-07-28 10:30:38 +02:00
Fedor Isakov f985db8206 Update and rebuild build scripts 2022-07-28 10:30:38 +02:00
Fedor Isakov 7fe773dcc2 Switch all type aspects in mpscore sample to typechecking terms
This includes dropping of Recover rule table and relying on
the automatic types recovery.
2022-07-28 10:30:38 +02:00
Fedor Isakov e03f8d134b Switch lambdac sample to typechecking queries 2022-07-28 10:30:37 +02:00
Fedor Isakov 8388edb4a5 Switch fitch sample to typechecking terms/queries 2022-07-28 10:30:37 +02:00
Fedor Isakov 0663921ecd Refactoring in TypecheckingService; simplifying code
Request is no longer dependent on `TypecheckingService`.
Only single request can be processed at a time, which helps
prevent recursion.
All facade method in `TypecheckingService` now return instance
of `Response` instead.
2022-07-15 19:46:33 +02:00
Fedor Isakov 115135bbb5 Update plugin versions and manifests 2022-07-13 12:27:14 +02:00
Fedor Isakov 23502bafe7 Fix dangling import 2022-07-12 11:18:42 +02:00
Fedor Isakov 71d2014ef1 Update and rebuild build scripts 2022-07-07 12:56:30 +02:00
Fedor Isakov f24169ba26 Refactor Config to be immutable; allow multi-project MPSCR-105
Drop hacks that try to figure out the active project.
Instead introduce new ones that cache the instance of `ProjectRepository`
(unfortunately, there is no way around that now).
Stop accessing and modifying the singleton `Config` instance,
instead make an instance of `Config` a parameter to `TypecheckingService`.
2022-07-07 12:56:30 +02:00
Fedor Isakov 735bd29d61 Update references and rebuild build scripts 2022-07-07 12:56:28 +02:00
Fedor Isakov ea3e7c4719 Rebuild build scripts 2022-05-26 12:52:25 +02:00
Fedor Isakov ed58f59794 Ensure all memo usages have unique keys 2022-05-26 09:55:21 +02:00
Fedor Isakov cfcf6ecd81 Add dependency to j.m.build to enable plugin compatibility w/MPS 2022-05-11 11:37:20 +02:00
Fedor Isakov 85b0156c00 Remove erroneously added debug message 2022-04-27 11:42:02 +02:00
Fedor Isakov 9a312135cf Rebuild build scripts 2022-04-26 11:40:28 +02:00
Fedor Isakov bd249c5d0c Drop obsolete feature: incremental specification 2022-04-21 16:05:31 +02:00
Fedor Isakov dda4c9a7e6 Rebuild build projects 2022-03-16 12:32:42 +01:00
Fedor Isakov c7c55605f5 Add dependency to c.i.modules.platform to pluigns 2022-02-23 13:09:34 +01:00
Fedor Isakov a09dd24413 Fix plugin dependency to make compatible with MPS 2022-02-18 10:17:28 +01:00
Fedor Isakov 9cb04439eb Fix packaging of coderules and mpscore plugins
Fix the path mapping of lib files.
2022-02-17 16:44:14 +01:00
Fedor Isakov b2f97f25dd Update mpscore plugin version and dependencies 2022-02-16 12:33:33 +01:00
Fedor Isakov 04048470c5 Fix processing of recursive types
Avoid failing to process composite types because
of visiting the same classifier.
2022-02-10 23:40:20 +01:00
Fedor Isakov d7ffb963f7 Fix and rebuild build scripts 2022-02-08 10:44:48 +01:00