Skip to content

Commit 2936429

Browse files
committed
update to run on Julia v0.6
1 parent d6a7859 commit 2936429

7 files changed

Lines changed: 26 additions & 24 deletions

File tree

REQUIRE

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
julia 0.5
2+
DataStructures

src/SimJulia.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Main module for SimJulia.jl – a combined continuous time / discrete event proc
55
"""
66
module SimJulia
77
using Base.Collections, Base.Dates
8+
using DataStructures
89

910
import Base.==, Base.+, Base.*, Base.&, Base.|
1011
import Base.isless, Base.yield, Base.schedule, Base.run, Base.now, Base.eps

src/base.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ type BaseEvent{E<:Environment}
3131
env :: E
3232
id :: UInt
3333
cid :: UInt
34-
callbacks :: PriorityQueue{Function, UInt}
34+
callbacks :: DataStructures.PriorityQueue{Function, UInt}
3535
state :: EVENT_STATE
3636
value :: Any
3737
function BaseEvent(env::E)
38-
new(env, env.eid+=one(UInt), zero(UInt), PriorityQueue(Function, UInt), idle, nothing)
38+
new(env, env.eid+=one(UInt), zero(UInt), DataStructures.PriorityQueue(Function, UInt), idle, nothing)
3939
end
4040
end
4141

@@ -69,5 +69,5 @@ function append_callback(func::Function, ev::AbstractEvent, args::Any...) :: Fun
6969
end
7070

7171
function remove_callback(cb::Function, ev::AbstractEvent)
72-
dequeue!(ev.bev.callbacks, cb)
72+
DataStructures.dequeue!(ev.bev.callbacks, cb)
7373
end

src/resources/base.jl

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,43 +23,43 @@ function isless(a::ResourceKey, b::ResourceKey)
2323
end
2424

2525
function trigger_put{E<:Environment}(put_ev::ResourceEvent{E}, res::AbstractResource{E})
26-
queue = PriorityQueue(res.Put_queue)
26+
queue = DataStructures.PriorityQueue(res.Put_queue)
2727
while length(queue) > 0
28-
(put_ev, key) = peek(queue)
28+
(put_ev, key) = DataStructures.peek(queue)
2929
proceed = do_put(res, put_ev, key)
3030
if state(put_ev) == scheduled
31-
dequeue!(res.Put_queue, put_ev)
31+
DataStructures.dequeue!(res.Put_queue, put_ev)
3232
end
3333
if proceed
34-
dequeue!(queue)
34+
DataStructures.dequeue!(queue)
3535
else
3636
break
3737
end
3838
end
3939
end
4040

4141
function trigger_get{E<:Environment}(get_ev::ResourceEvent{E}, res::AbstractResource{E})
42-
queue = PriorityQueue(res.Get_queue)
42+
queue = DataStructures.PriorityQueue(res.Get_queue)
4343
while length(queue) > 0
44-
(get_ev, key) = peek(queue)
44+
(get_ev, key) = DataStructures.peek(queue)
4545
proceed = do_get(res, get_ev, key)
4646
if state(get_ev) == scheduled
47-
dequeue!(res.Get_queue, get_ev)
47+
DataStructures.dequeue!(res.Get_queue, get_ev)
4848
end
4949
if proceed
50-
dequeue!(queue)
50+
DataStructures.dequeue!(queue)
5151
else
5252
break
5353
end
5454
end
5555
end
5656

5757
function cancel{E<:Environment}(res::AbstractResource{E}, put_ev::Put{E})
58-
dequeue!(res.Put_queue, put_ev)
58+
DataStructures.dequeue!(res.Put_queue, put_ev)
5959
end
6060

6161
function cancel{E<:Environment}(res::AbstractResource{E}, get_ev::Get{E})
62-
dequeue!(res.Get_queue, get_ev)
62+
DataStructures.dequeue!(res.Get_queue, get_ev)
6363
end
6464

6565
function capacity(res::AbstractResource)

src/resources/containers.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ type Container{N<:Number, E<:Environment} <: AbstractResource{E}
99
capacity :: N
1010
level :: N
1111
seid :: UInt
12-
Put_queue :: PriorityQueue{Put{E}, ContainerKey{N}}
13-
Get_queue :: PriorityQueue{Get{E}, ContainerKey{N}}
12+
Put_queue :: DataStructures.PriorityQueue{Put{E}, ContainerKey{N}}
13+
Get_queue :: DataStructures.PriorityQueue{Get{E}, ContainerKey{N}}
1414
function Container(env::E, capacity::N, level::N)
15-
new(env, capacity, level, zero(UInt), PriorityQueue(Put{E}, ContainerKey{N}), PriorityQueue(Get{E}, ContainerKey{N}))
15+
new(env, capacity, level, zero(UInt), DataStructures.PriorityQueue(Put{E}, ContainerKey{N}), DataStructures.PriorityQueue(Get{E}, ContainerKey{N}))
1616
end
1717
end
1818

src/resources/stores.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ type Store{T, E<:Environment} <: AbstractResource{E}
1515
capacity :: UInt
1616
items :: Set{T}
1717
seid :: UInt
18-
Put_queue :: PriorityQueue{Put{E}, StorePutKey{T}}
19-
Get_queue :: PriorityQueue{Get{E}, StoreGetKey}
18+
Put_queue :: DataStructures.PriorityQueue{Put{E}, StorePutKey{T}}
19+
Get_queue :: DataStructures.PriorityQueue{Get{E}, StoreGetKey}
2020
function Store(env::E, capacity::UInt)
21-
new(env, capacity, Set{T}(), zero(UInt), PriorityQueue(Put{E}, StorePutKey{T}), PriorityQueue(Get{E}, StoreGetKey))
21+
new(env, capacity, Set{T}(), zero(UInt), DataStructures.PriorityQueue(Put{E}, StorePutKey{T}), DataStructures.PriorityQueue(Get{E}, StoreGetKey))
2222
end
2323
end
2424

src/simulation.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ An initial_time for the simulation can be specified. By default, it starts at 0.
3333
"""
3434
type Simulation{T<:TimeType} <: Environment
3535
time :: T
36-
heap :: PriorityQueue{BaseEvent{Simulation{T}}, EventKey{T}}
36+
heap :: DataStructures.PriorityQueue{BaseEvent{Simulation{T}}, EventKey{T}}
3737
eid :: UInt
3838
sid :: UInt
3939
active_proc :: Nullable{Process{Simulation{T}}}
4040
function Simulation(initial_time::T)
41-
new(initial_time, PriorityQueue(BaseEvent{Simulation{T}}, EventKey{T}), zero(UInt), zero(UInt), Nullable{Process{Simulation{T}}}())
41+
new(initial_time, DataStructures.PriorityQueue(BaseEvent{Simulation{T}}, EventKey{T}), zero(UInt), zero(UInt), Nullable{Process{Simulation{T}}}())
4242
end
4343
end
4444

@@ -96,12 +96,12 @@ function step(sim::Simulation)
9696
if isempty(sim.heap)
9797
throw(EmptySchedule())
9898
end
99-
(bev, key) = peek(sim.heap)
100-
dequeue!(sim.heap)
99+
(bev, key) = DataStructures.peek(sim.heap)
100+
DataStructures.dequeue!(sim.heap)
101101
sim.time = key.time
102102
bev.state = triggered
103103
while !isempty(bev.callbacks)
104-
dequeue!(bev.callbacks)()
104+
DataStructures.dequeue!(bev.callbacks)()
105105
end
106106
end
107107

0 commit comments

Comments
 (0)