Ancestral Intervals
Moonshine.Ω — Type
const Ω = Interval{:closed, :open, Float64}Right semi-open interval.
See also AI, AIs and AncestralIntervals.
Moonshine.AncestralIntervals — Type
struct AncestralIntervals{T<:AbstractVector{<:IntervalSets.AbstractInterval}} <: AbstractVector{IntervalSets.AbstractInterval}Collection of intervals.
Meant to represent the set of intervals an edge/vertex is ancestral for. You might want to use the convenient shorthand AIs instead.
Implements the iteration interface and the array interface.
Fields
data::AbstractVector{<:IntervalSets.AbstractInterval}
Constructors
AncestralIntervals{T}(data; simplify)defined at src/AncestralIntervals.jl:82.
AncestralIntervals{V}()defined at src/AncestralIntervals.jl:98.
AncestralIntervals(data; simplify)defined at src/AncestralIntervals.jl:100.
Arguments
If simplify = true, intervals contained in data are simplified: see simplify! for details.
Moonshine.AIs — Type
Moonshine.simplify! — Function
simplify!(ωs)Simplify an AIs.
Two operations are performed:
- connected intervals are merged together (see
isdisconnected); - intervals are sorted by left endpoint.
–Internal–
Moonshine.isdisconnected — Function
isdisconnected(A, B)True if intervals are disconnected, that is their intersection is empty and they do not share an endpoint.
–Internal–