@@ -153,3 +153,36 @@ entry
153153
154154When used in a finite state machine, this operator returns `true` if the queried state is active and false otherwise.
155155""" activeState
156+
157+ function vars! (vars, O:: Transition ; op = Differential)
158+ vars! (vars, O. from)
159+ vars! (vars, O. to)
160+ vars! (vars, O. cond; op)
161+ return vars
162+ end
163+ function vars! (vars, O:: InitialState ; op = Differential)
164+ vars! (vars, O. s; op)
165+ return vars
166+ end
167+ function vars! (vars, O:: StateMachineOperator ; op = Differential)
168+ error (" Unhandled state machine operator" )
169+ end
170+
171+ function namespace_expr (
172+ O:: Transition , sys, n = nameof (sys); ivs = independent_variables (sys))
173+ return Transition (
174+ O. from === nothing ? O. from : renamespace (sys, O. from),
175+ O. to === nothing ? O. to : renamespace (sys, O. to),
176+ O. cond === nothing ? O. cond : namespace_expr (O. cond, sys),
177+ O. immediate, O. reset, O. synchronize, O. priority
178+ )
179+ end
180+
181+ function namespace_expr (
182+ O:: InitialState , sys, n = nameof (sys); ivs = independent_variables (sys))
183+ return InitialState (O. s === nothing ? O. s : renamespace (sys, O. s))
184+ end
185+
186+ function namespace_expr (O:: StateMachineOperator , sys, n = nameof (sys); kwargs... )
187+ error (" Unhandled state machine operator" )
188+ end
0 commit comments