@@ -4,6 +4,8 @@ struct SampleTime <: Operator
44 SampleTime () = SymbolicUtils. term (SampleTime, type = Real)
55end
66SymbolicUtils. promote_symtype (:: Type{<:SampleTime} , t... ) = Real
7+ Base. nameof (:: SampleTime ) = :SampleTime
8+ SymbolicUtils. isbinop (:: SampleTime ) = false
79
810# Shift
911
@@ -32,6 +34,9 @@ struct Shift <: Operator
3234end
3335Shift (steps:: Int ) = new (nothing , steps)
3436normalize_to_differential (s:: Shift ) = Differential (s. t)^ s. steps
37+ Base. nameof (:: Shift ) = :Shift
38+ SymbolicUtils. isbinop (:: Shift ) = false
39+
3540function (D:: Shift )(x, allow_zero = false )
3641 ! allow_zero && D. steps == 0 && return x
3742 Term {symtype(x)} (D, Any[x])
@@ -108,6 +113,8 @@ Sample(x) = Sample()(x)
108113(D:: Sample )(x) = Term {symtype(x)} (D, Any[x])
109114(D:: Sample )(x:: Num ) = Num (D (value (x)))
110115SymbolicUtils. promote_symtype (:: Sample , x) = x
116+ Base. nameof (:: Sample ) = :Sample
117+ SymbolicUtils. isbinop (:: Sample ) = false
111118
112119Base. show (io:: IO , D:: Sample ) = print (io, " Sample(" , D. clock, " )" )
113120
137144(D:: Hold )(x) = Term {symtype(x)} (D, Any[x])
138145(D:: Hold )(x:: Num ) = Num (D (value (x)))
139146SymbolicUtils. promote_symtype (:: Hold , x) = x
147+ Base. nameof (:: Hold ) = :Hold
148+ SymbolicUtils. isbinop (:: Hold ) = false
140149
141150Hold (x) = Hold ()(x)
142151
0 commit comments