A subtype of Label that uses an underlying array to map an integer id to the value associated with that id.
Backed by an array, but allows some ids to have undefined ('None') value (the ids present are tracked by a bitset).
A partially defined flag label backed by a bitset.
A partially defined label containing values of type L.
A partially defined label containing values of type L. The tracking of which ids have the label defined is done by a BitSet, hence this trait must have self type HasMaxId.
This label is suitable to keep a 'flag' type label which some ids have and others don't.
This label is suitable to keep a 'flag' type label which some ids have and others don't.
Those ids that have it return Some(x)
and those don't have return None
. x
does not
matter and here we use true.
Specialized labels for int ids (label keys).
Specialized labels for int ids (label keys). Label values can be anything.
the type of the label value
A trait to support adding labels to nodes and edges.
A trait to support adding labels to nodes and edges. A label is of any type, has a name and optionally maps an 'id' (such as node-id or edge-id) to a value. Labels need not be defined for all ids.
the id-type of the node or edges (e.g., Int)
the type of the label value
A subtype of Label that uses an underlying array to map an integer id to the value associated with that id. Useful when
maxId
is not too big.type of the label value ClassTag is required to be able to build an array of type L TypeTag is required to be able to retrieve values of type L from the Label
An array based label must be defined for all ids. If desired for only some ids, mix it in with
PartialLabel