Limitable
interface Limitable implements SS_List
Additional interface for {@link SS_List} classes that are limitable - able to have a subset of the list extracted.
All methods in this interface are immutable - they should return new instances with the limit applied, rather than applying the limit in place
Methods
Adds an item to the list, making no guarantees about where it will appear.
Returns a map of a key field to a value field of all the items in the list.
Returns the first item in the list where the key field is equal to the value.
Details
in SS_List at line 20
array
toArray()
Returns all the items in the list in an array.
in SS_List at line 27
array
toNestedArray()
Returns the contents of the list as an array of maps.
in SS_List at line 35
add(mixed $item)
Adds an item to the list, making no guarantees about where it will appear.
in SS_List at line 42
remove(mixed $item)
Removes an item from the list.
in SS_List at line 49
mixed
first()
Returns the first item in the list.
in SS_List at line 56
mixed
last()
Returns the last item in the list.
in SS_List at line 66
Map
map(string $keyfield = 'ID', string $titlefield = 'Title')
Returns a map of a key field to a value field of all the items in the list.
in SS_List at line 76
mixed
find(string $key, mixed $value)
Returns the first item in the list where the key field is equal to the value.
in SS_List at line 84
array
column(string $colName = "ID")
Returns an array of a single field value for all items in the list.
in SS_List at line 92
$this
each(callable $callback)
Walks the list using the specified callback
at line 25
Limitable
limit(int $limit, int $offset)
Returns a new instance of this list where no more than $limit records are included.
If $offset is specified, then that many records at the beginning of the list will be skipped. This matches the behaviour of the SQL LIMIT clause.