ModelingToolkit.jl
ModelingToolkit.jl copied to clipboard
feat: extend all arguments of a base sys to sys
Closes #3601
Adds the arguments of a base system to the main system.
@extends PartialSystem()
Note that we have an alternate (and the initial) syntax to avoid enforcing that PartialSystem should be defined at the time of defining higher model: @extend var_to_unpack1, var_to_unpack2 = partial_sys = PartialSystem(var1 = value1)
. In this syntax, the list of kwargs of PartialSystem won't be available. So, that syntax remains unchanged. One has to list all the args that should be added to the main system.
I've documented this and noted that former syntax is preferred over this.
cc @baggepinnen
Checklist
- [x] Appropriate tests were added
- [x] Any code changes were done in a way that does not break public API
- [x] All documentation related to code changes were updated
- [x] The new code follows the contributor guidelines, in particular the SciML Style Guide and COLPRAC.
- [x] Any new documentation only uses public API