What is the meaning of Base.Order.ForwardOrdering?

In my task, I need to write code to create a mutable struct with name Si, which has an attribute with name eventQueue, which is of type PriorityQueue. After playing with the code, the following works out well.

using DataStructures

mutable struct Evnt
     Evnt() = new(-1.0)

mutable struct Si
     eventQueue::PriorityQueue{Evnt, Float64, Base.Order.ForwardOrdering}
     Si() = new()

si1 = Si()
enqueue!(pq, e1,e1.time) 
si1.eventQueue = pq

My question is, is the above code good enough, i.e., is there a better way to accomplish this? Moreover, what is exactly the meaning of “Base.Order.ForwardOrdering” ? Many thanks.

1 Like