aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/language
Commit message (Collapse)AuthorAge
* fix(language): Sonar lint issueLibravatar Kristóf Marussy2024-04-07
|
* feat(language): type inferenceLibravatar Kristóf Marussy2024-04-07
| | | | | | * Customizable operator overloads. * Customizable aggregation operators. * Simplify ProblemQualifiedNameProvider.
* feat(language): validate assignment expressionsLibravatar Kristóf Marussy2024-04-07
|
* refactor(language): assignment and cast expressionLibravatar Kristóf Marussy2024-04-07
| | | | Also reorganizes operator names for easier future extension.
* feat(language): datatype declarationsLibravatar Kristóf Marussy2024-04-07
| | | | | Also changes ReferenceDeclaration to declare attributes, since reference and attributes can only be distinguished at linking time.
* feat: custom identifier coloringLibravatar Kristóf Marussy2024-03-22
|
* refactor(language): classpath based library contextLibravatar Kristóf Marussy2024-02-19
|
* feat(language): import validationLibravatar Kristóf Marussy2024-02-18
| | | | | | | Validate imports and imported resources. Also fixes a linking error in imported resources by ensuring that imported resources are always fully resolved with all of their derived state.
* refactor(language): no fully qualified self importLibravatar Kristóf Marussy2024-02-18
| | | | | | | | Make sure it is impossible to create clashing fully qualified names when renaming a module by forbidding modules from referring to their own elements with fully qualified names. Therefore, serializing a solution will not create clashing fully qualified names (which would prevent serialization from succeeding).
* feat(language): filter content assist for importsLibravatar Kristóf Marussy2024-02-11
|
* refactor(language): scope shadowingLibravatar Kristóf Marussy2024-02-11
|
* refactor(language): simplify default module kindsLibravatar Kristóf Marussy2024-02-11
| | | | Use a transient attribute instead of an adapter.
* feat(language): automatic problem kind inferenceLibravatar Kristóf Marussy2024-02-06
|
* Revert "refactor: simplify module name inference"Libravatar Kristóf Marussy2024-02-05
| | | | This reverts commit c6e70f5a01c877b560d4561f22a830c1ce1c6dbe.
* refactor: simplify module name inferenceLibravatar Kristóf Marussy2024-02-04
| | | | | We never need to infer names for modules not added by import, because importing a problem (i.e., a Resource manually added into the ResourceSet) is not allowed.
* feat: filesystem-level import resolutionLibravatar Kristóf Marussy2024-02-04
| | | | | Modules without an explicitly declared name get a name automatically inferred from their path.
* feat(language): import resolutionLibravatar Kristóf Marussy2024-02-03
|
* refactor(language): name disambiguationLibravatar Kristóf Marussy2024-02-02
| | | | | | * Use fully qualified names starting with :: (as in C++) to unambiguously refer to an element. * Name shadowing within modules.
* feat(language): validate module isolationLibravatar Kristóf Marussy2024-01-31
|
* refactor(language): module and node declarationsLibravatar Kristóf Marussy2024-01-31
| | | | | | | | * New default file extension: .refinery (.problem is also supported). * Add module keyword for self-contained modules. * Rename indiv declarations to atom declaration. * Add node and multi declarations for explicitly declared nodes and multi-objects, respectively.
* feat(web): color identifiers and nodesLibravatar Kristóf Marussy2024-01-03
| | | | | We use a palette-based coloring strategy, where each class and enum gets a color from
* fix(language): unambigous reference serializationLibravatar Kristóf Marussy2023-12-24
|
* feat: solution serializerLibravatar Kristóf Marussy2023-12-24
|
* feat(langauge): validate exists and equalsLibravatar Kristóf Marussy2023-11-19
|
* feat(language): arity validationLibravatar Kristóf Marussy2023-11-19
|
* feat(language): opposite reference validationLibravatar Kristóf Marussy2023-11-17
|
* refactor(language): opposite content assistLibravatar Kristóf Marussy2023-11-17
| | | | Only show references that may plausibly appear in an opposite declaration.
* feat(language-ide): content assist filteringLibravatar Kristóf Marussy2023-11-17
|
* feat(language): validate unique namesLibravatar Kristóf Marussy2023-11-17
|
* feat(langugage): detect ambiguous referencesLibravatar Kristóf Marussy2023-11-17
|
* build: prepare for Maven publicationLibravatar Kristóf Marussy2023-11-17
|
* chore(build): replce deprecated Gradle API useLibravatar Kristóf Marussy2023-08-31
|
* refactor: rename invalidNumberOfContainersLibravatar Kristóf Marussy2023-08-29
| | | | | Use a simplified name invalidContainer, since this pattern may match even if there is a sufficient number of ERROR containers.
* refactor(frontent): improve graph drawingLibravatar Kristóf Marussy2023-08-26
|
* feat: basic semantics mapping and visualizationLibravatar Kristóf Marussy2023-08-17
|
* refactor(language): invalid multiplicity traceLibravatar Kristóf Marussy2023-08-15
| | | | | Also simplifies attributes and flags for now, as we don't translate them to abstractions.
* build: improve Xtext project isolationLibravatar Kristóf Marussy2023-04-26
| | | | | | * Avoid writing generated source files directly into sibling projects. * Full project isolation cannot be enabled yet, because the frontend plugin still requires cross-projects task dependencies for Node.js installation.
* chore: add copyright headersLibravatar Kristóf Marussy2023-04-15
| | | | | | | | | | | | | | Make sure we obey the REUSE (https://reuse.software) specification and the origin, copyright owner, and license of all files are clearly marked. The whole project is under the EPL-2.0, except for trivial files where copyright is not applicable that are marked with the CC0-1.0 license. Moreover, code included from third parties is also available under the respective license. chore: add CONTRIBUTORS.md List all authors and supporting organizations in accordance with the REUSE specification.
* build: organize build scripts into packagesLibravatar Kristóf Marussy2023-04-09
| | | | | | | Also take advantage of precompiled Kotlin scripts to write build scripts in a more straightforward manner through generated accessors. Might increase memory usage of Gradle.
* build: convert Gradle scripts to KotlinLibravatar Kristóf Marussy2023-04-08
| | | | | | | Improves IDE support build scripts in IntelliJ. There is no Eclipse IDE support, but Eclipse didn't have support for Groovy either, so there is no degradation of functionality.
* fix(frontend): content assist error recoveryLibravatar Kristóf Marussy2022-12-09
|
* refactor(language): simplify syntaxLibravatar Kristóf Marussy2022-11-22
|
* refactor: separate primitive types from nodesLibravatar Kristóf Marussy2022-11-22
|
* feat(language): numeric expressionsLibravatar Kristóf Marussy2022-11-22
|
* refactor: DNF atomsLibravatar Kristóf Marussy2022-11-05
| | | | | | Restore count != capability. Still needs semantics and tests for count atoms over partial models.
* refactor: DNF query builderLibravatar Kristóf Marussy2022-11-05
|
* fix: test and lint failuresLibravatar Kristóf Marussy2022-10-04
|
* refactor(language): disable rule parsingLibravatar Kristóf Marussy2022-10-04
| | | | Rules have too complex semantics to implement in the first prototype.
* feat(language): problem desugaringLibravatar Kristóf Marussy2022-09-19
|
* refactor(language): clarify containment hierarchyLibravatar Kristóf Marussy2022-09-14
|