Skip to content

Commit 6ac8707

Browse files
authored
Remove ismultiagenttype checks (#1116)
1 parent d7f738b commit 6ac8707

File tree

4 files changed

+2
-37
lines changed

4 files changed

+2
-37
lines changed

src/core/model_event_queue.jl

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -153,12 +153,6 @@ function EventQueueABM(
153153
autogenerate_on_add = true,
154154
autogenerate_after_action = true,
155155
) where {A<:AbstractAgent,S<:SpaceType,P,R<:AbstractRNG}
156-
if warn
157-
@warn "This model type is still experimental which means that it is subject to breaking changes in the
158-
future. Also, while all the core functionalities have been implemented, this model type
159-
has some more limited features than `StandardABM`: in particular, visualizations and
160-
IO functionalities are incomplete." maxlog=1
161-
end
162156
C = construct_agent_container(container, A)
163157
agents = C()
164158
events = SizedVector{length(events), Union{typeof.(events)...}}(events...)

src/core/model_standard.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ function StandardABM(
152152
ABMObservable.
153153
""" maxlog=1
154154
end
155-
!(ismultiagenttype(A)) && !(is_sumtype(A)) && agent_validator(A, space, warn)
155+
!(is_sumtype(A)) && agent_validator(A, space, warn)
156156
C = construct_agent_container(container, A)
157157
agents = C()
158158
agents_types = union_types(A)

src/simulations/sample.jl

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,7 @@ function replicate!(agent::AbstractAgent, model; kwargs...)
104104
end
105105

106106
function copy_agent(agent::A, model, id_new; kwargs...) where {A<:AbstractAgent}
107-
# TODO: this first if statement should be removed as soon as @multiagent is removed
108-
if ismultiagenttype(A)
109-
args = ismultiagentsumtype(A) ? new_args_sum_t(agent, model; kwargs...) : new_args_t(agent, model; kwargs...)
110-
newagent = variant_constructor(agent)(id_new, args...)
111-
elseif is_sumtype(A)
107+
if is_sumtype(A)
112108
args = new_args_sum_t(agent, model; kwargs...)
113109
newagent = A(variantof(agent)(id_new, args...))
114110
else

test/scheduler_tests.jl

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -229,31 +229,6 @@ end
229229
[Agent1, Agent1, Agent1, Agent0, Agent0, Agent0]
230230
@test all(x -> x < 4, s[1:3])
231231
@test all(x -> x > 3, s[4:6])
232-
233-
scheduler = Schedulers.ByKind((:G, :F); shuffle_kinds = false, shuffle_agents = false)
234-
model = init_mixed_multiagent_model(scheduler)
235-
s1 = collect(abmscheduler(model)(model))
236-
s2 = collect(abmscheduler(model)(model))
237-
@test length(s1) == length(s2) == 20
238-
@test s1 == s2
239-
240-
scheduler = Schedulers.ByKind((:G, :F); shuffle_kinds = false, shuffle_agents = true)
241-
model = init_mixed_multiagent_model(scheduler)
242-
s1 = collect(abmscheduler(model)(model))
243-
s2 = collect(abmscheduler(model)(model))
244-
@test length(s1) == length(s2) == 20
245-
@test s1 != s2
246-
@test Set(s1) == Set(s2)
247-
@test filter(id -> kindof(model[id]) == :F, s1) != filter(id -> kindof(model[id]) == :F, s2)
248-
249-
scheduler = Schedulers.ByKind((:G, :F); shuffle_kinds = true, shuffle_agents = true)
250-
model = init_mixed_multiagent_model(scheduler)
251-
s1 = collect(abmscheduler(model)(model))
252-
s2 = collect(abmscheduler(model)(model))
253-
@test length(s1) == length(s2) == 20
254-
@test s1 != s2
255-
@test Set(s1) == Set(s2)
256-
@test filter(id -> kindof(model[id]) == :F, s1) != filter(id -> kindof(model[id]) == :F, s2)
257232
end
258233

259234
@testset "Scheduler as struct" begin

0 commit comments

Comments
 (0)