FilterIterator
extends FastPriorityQueue
in package
Specialized priority queue implementation for use with an intercepting filter chain.
Allows removal
Table of Contents
- contains() : bool
- Does the queue contain a given value?
- insert() : void
- Insert a value into the queue.
- next() : mixed
- Iterate the next filter in the chain
- remove() : bool
- Remove a value from the queue
Methods
contains()
Does the queue contain a given value?
public
contains(mixed $datum) : bool
Parameters
- $datum : mixed
Return values
bool —insert()
Insert a value into the queue.
public
insert(callable $value, mixed $priority) : void
Requires a callable.
Parameters
- $value : callable
- $priority : mixed
Tags
Return values
void —next()
Iterate the next filter in the chain
public
next([mixed $context = null ][, array<string|int, mixed> $params = [] ][, FilterIterator $chain = null ]) : mixed
Iterates and calls the next filter in the chain.
Parameters
- $context : mixed = null
- $params : array<string|int, mixed> = []
- $chain : FilterIterator = null
Return values
mixed —remove()
Remove a value from the queue
public
remove(mixed $datum) : bool
This is an expensive operation. It must first iterate through all values, and then re-populate itself. Use only if absolutely necessary.
Parameters
- $datum : mixed