Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
148951a
Fix #218: PackageExtension methods implemented
antoineatstariongroup Apr 20, 2026
79e45fa
[WIP]: KEBNF files are parsed and turn into object graph
antoineatstariongroup Feb 18, 2026
ea686ba
[WIP] First draft of Code-Gen
antoineatstariongroup Feb 19, 2026
90cf346
[WIP] Added prefix on assingment, gonna start implement logic for bui…
antoineatstariongroup Feb 19, 2026
6779ca8
[WIP] Improved G4 and process TerminalElement rules
antoineatstariongroup Feb 20, 2026
129d6a3
[WIP] Eased the value_literal on G4
antoineatstariongroup Feb 20, 2026
c8ed9e4
[WIP] All rules have method, some logic put on rule Element processing
antoineatstariongroup Feb 25, 2026
2414031
Supports assignment for bool and enum
antoineatstariongroup Feb 26, 2026
2860e1a
[WIP] Most assignment case handle, including collection
antoineatstariongroup Mar 3, 2026
7114f6c
[WIP] Implementation of hand-coded conditional checks
antoineatstariongroup Mar 4, 2026
dba1e44
[WIP] Enhance generaion but missing logic (FeatureMembership issue)
antoineatstariongroup Mar 5, 2026
483b484
[WIP] ix FeatureMembershipTextualNotationBuilder
antoineatstariongroup Mar 5, 2026
c0f1b66
[WIP] Correctly implemented reference assignement
antoineatstariongroup Mar 6, 2026
4ba3773
[WIP] Reference property with ValueLiteral supported
antoineatstariongroup Mar 6, 2026
eafd67a
[WIP] Supports last assignement case
antoineatstariongroup Mar 6, 2026
337e60c
[WIP] Supports everything except Multiple Alternatives
antoineatstariongroup Mar 6, 2026
553b4cc
[WIP] Supports alternatives composed of all TerminalElement
antoineatstariongroup Mar 9, 2026
4f4cd35
[WIP] Switch case for NonTerminalElement while multiple alternative i…
antoineatstariongroup Mar 10, 2026
101ec13
[WIP] Supports assigment with groupElement
antoineatstariongroup Mar 11, 2026
cf0e800
[WIP] All Assignment cases supported in multiple alternatives
antoineatstariongroup Mar 11, 2026
4aea7c6
[WIP] Supports Alternative with Assignment|NonTerminalElement
antoineatstariongroup Mar 12, 2026
b595fcf
[WIP] Supports multiple alternatives with NonTerminal & Assignment + …
antoineatstariongroup Mar 13, 2026
aab90e8
[WIP] Implemented the NonBehaviorBodyItem rule
antoineatstariongroup Mar 13, 2026
202ca95
[WIP] in the middle of refactor on correct handling of collection. Th…
antoineatstariongroup Mar 18, 2026
3884b71
WIP
antoineatstariongroup Apr 20, 2026
e870cdf
[WIP] Most cases handle, need to cover methods that van not be code-gen
antoineatstariongroup Apr 22, 2026
fdb5e3a
[WIP] Covers multiple terminal element cases
antoineatstariongroup Apr 22, 2026
f1004ce
Handle owned cases
antoineatstariongroup Apr 22, 2026
5bdab23
Handle rules with either ";" or owned elements
antoineatstariongroup Apr 22, 2026
521ddf2
Supports new set of multiple alternative using guard system
antoineatstariongroup Apr 22, 2026
8adb68b
Better handling of NonTerminal + assignment rule
antoineatstariongroup Apr 22, 2026
e556e66
Handcode for some rules (TriggerExpression , FeatureIdentification, F…
antoineatstariongroup Apr 22, 2026
ce523e6
claude.MD for the GRAMMAR
antoineatstariongroup Apr 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ Test framework: **NUnit**. Test classes use `[TestFixture]` and `[Test]` attribu

- favour duplicated code in codegeneration to have staticaly defined methods that provide performance over reflection based code.
- code generation is done by processing the UML model and creating handlebars templates
- **When working on the grammar/textual notation code generator** (`SysML2.NET.CodeGenerator/HandleBarHelpers/RulesHelper.cs` and related grammar processing): read `SysML2.NET.CodeGenerator/GRAMMAR.md` for the KEBNF grammar model, cursor/builder conventions, and code-gen patterns already handled.

### Code Generation Pipeline

Expand Down Expand Up @@ -118,3 +119,4 @@ Auto-generated DTOs use structured namespaces reflecting the KerML/SysML package
- Prefer switch expressions/statements over if-else chains when applicable
- Prefer indexer syntax (e.g., 'list[^1]') and range syntax (e.g., 'array[1..^1]') over LINQ methods (e.g., 'list.Last()', 'list.Skip(1).Take(n)') when applicable
- Use meaningful variable names instead of single-letter names in any context (e.g., 'charIndex' instead of 'i', 'currentChar' instead of 'c', 'element' instead of 'e')
- Use 'NotSupportedException' (not 'NotImplementedException') for placeholder/stub methods that require manual implementation
Loading
Loading