@@ -39,7 +39,7 @@ const UnknownIndexMap = Dict{
39
39
const TunableIndexMap = Dict{BasicSymbolic,
40
40
Union{Int, UnitRange{Int}, Base. ReshapedArray{Int, N, UnitRange{Int}} where {N}}}
41
41
42
- struct IndexCache{D}
42
+ struct IndexCache
43
43
unknown_idx:: UnknownIndexMap
44
44
# sym => (bufferidx, idx_in_buffer)
45
45
discrete_idx:: Dict{BasicSymbolic, DiscreteIndex}
@@ -49,7 +49,7 @@ struct IndexCache{D}
49
49
constant_idx:: ParamIndexMap
50
50
nonnumeric_idx:: NonnumericMap
51
51
observed_syms:: Set{BasicSymbolic}
52
- dependent_pars:: Set{D }
52
+ dependent_pars:: Set{Union{BasicSymbolic, CallWithMetadata} }
53
53
discrete_buffer_sizes:: Vector{Vector{BufferTemplate}}
54
54
tunable_buffer_size:: BufferTemplate
55
55
constant_buffer_sizes:: Vector{BufferTemplate}
@@ -275,14 +275,7 @@ function IndexCache(sys::AbstractSystem)
275
275
end
276
276
end
277
277
278
- pdeps = parameter_dependencies (sys)
279
-
280
- D = if isempty (pdeps)
281
- BasicSymbolic
282
- else
283
- mapreduce (typeof, promote_type, getproperty .(pdeps, :lhs ))
284
- end
285
- dependent_pars = Set {D} ()
278
+ dependent_pars = Set {Union{BasicSymbolic, CallWithMetadata}} ()
286
279
287
280
for eq in parameter_dependencies (sys)
288
281
sym = eq. lhs
@@ -297,7 +290,7 @@ function IndexCache(sys::AbstractSystem)
297
290
end
298
291
end
299
292
300
- return IndexCache {D} (
293
+ return IndexCache (
301
294
unk_idxs,
302
295
disc_idxs,
303
296
callback_to_clocks,
0 commit comments