Skip to content

Break modifiers (Modelica 3.6 selective model extension) (0.2.2) - #32

Merged
JKRT merged 4 commits into
masterfrom
break-modifiers
Oct 10, 2026
Merged

JKRT merged 4 commits into
masterfrom
break-modifiers

Conversation

@JKRT

@JKRT JKRT commented Oct 10, 2026

Copy link
Copy Markdown
Member

Parses Modelica 3.6 selective model extension, following omc's Modelica.g: extends A(break x), extends A(break connect(a, b)) (Absyn INHERITANCEBREAK) and x = break (Absyn BREAK). Only extends clauses accept break x/break connect(...).

The generated header now looks Absyn constructors up without asserts: a record missing from the loaded Absyn raises a Julia error only where that syntax is parsed, so a newer library still works with Absyn 1.3.5 (break is an error there, everything else parses).

Version 0.2.2, Absyn 1.4 (OpenModelica/Absyn.jl#5). Checked: MSL 3.2.3, 4.0.0, 4.1.0 and Buildings 13 parse to identical Absyn with the old and new library; new testset "Break modifiers". The library is generated from Absyn master, so CI here passes once Absyn#5 is merged.

🤖 Generated with Claude Code

JKRT added 4 commits October 10, 2026 11:13
extends A(break x), extends A(break connect(a, b)) and modifier values x = break, as in omc's Modelica.g (Absyn INHERITANCEBREAK and BREAK; needs the Absyn with them).

Assisted-by: Claude Opus 5.5
Assisted-by: Claude Opus 5.5
… built

The constructors are looked up by name without asserts; the syntax that builds a record the loaded Absyn lacks raises a Julia error instead. A library built from a newer grammar then still parses everything else with an older Absyn.

Assisted-by: Claude Opus 5.5
Assisted-by: Claude Opus 5.5
@JKRT
JKRT merged commit 1670918 into master Oct 10, 2026
8 of 15 checks passed
@JKRT
JKRT deleted the break-modifiers branch October 23, 2026 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant