Types
RangeReverseArray[T] = ref object root: RangeReverseArrayNode[T] length: int
- Source Edit
Procs
proc `$`[T](self: RangeReverseArray[T]): string
- Source Edit
proc `[]=`[T](self: RangeReverseArray[T]; index: BackwardsIndex; value: T)
- Source Edit
proc `[]=`[T](self: RangeReverseArray[T]; index: int; value: T)
- Source Edit
proc `[]`[T](self: RangeReverseArray[T]; index: BackwardsIndex): T
- Source Edit
proc `[]`[T](self: RangeReverseArray[T]; index: int): T
- Source Edit
proc get[T](self: RangeReverseArray[T]; index: int): T
- index番目の値を返します。 Source Edit
proc initRangeReverseArray[T](v: openArray[T]): RangeReverseArray[T]
- vで初期化します。 区間反転、一点取得、一点更新はすべてO(log N)です。 Source Edit
proc len[T](self: RangeReverseArray[T]): int
- Source Edit
proc reverse[T](self: RangeReverseArray[T]; l, r: int)
- 半開区間[l, r)を反転します。 Source Edit
proc reverse[T](self: RangeReverseArray[T]; segment: HSlice[int, int])
- 閉区間segmentを反転します。 Source Edit
proc toRangeReverseArray[T](v: openArray[T]): RangeReverseArray[T]
- Source Edit
proc toSeq[T](self: RangeReverseArray[T]): seq[T]
- Source Edit
proc update[T](self: RangeReverseArray[T]; index: int; value: T)
- index番目の値をvalueに変更します。 Source Edit
Iterators
iterator items[T](self: RangeReverseArray[T]): T
- Source Edit