RimKeyRange

Range over a Range with the same key in the a specific rim

@safe
struct RimKeyRange (
Range
) if (
isInputRange!Range &&
isImplicitlyConvertible!(ElementType!Range, const(Archive))
) {
protected
RangeContext ctx;
const
Buffer rim_keys;
const
int rim;
const
Flag!"undo" undo;
}

Members

Classes

RangeContext
class RangeContext
Undocumented in source.

Functions

add
void add(const(Archive) archive)

Adds an archive to the current range The archives should be in the same rim

empty
bool empty()

Checks if the range is empty

front
const(Archive) front()
nextRim
RimKeyRange nextRim()

Create a new range from this range at the next rim

oneLeft
bool oneLeft()

Checks if only one archives are left in the range

popFront
void popFront()

Progress to the next archive in the list

save
RimKeyRange save()

Creates new range at the current position

selectRim
RimKeyRange selectRim(uint rim)

Create a new range from this range at the rim

type
const(Archive.Type) type()