Box<E> class
abstract
Boxes contain all of your data. In the browser, each box has its own IndexedDB database. On all other platforms, each Box is stored in a separate file in the Hive home directory.
Write operations are asynchronous but the new values are immediately
available. The returned Future
finishes when the change is written to
the backend. If this operation fails, the changes are being reverted.
Read operations for normal boxes are synchronous (the entries are in memory). Lazy boxes have asynchronous read operations.
Constructors
- Box()
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- isEmpty → bool
-
Returns
true
if there are no entries in this box.no setterinherited - isNotEmpty → bool
-
Returns true if there is at least one entries in this box.
no setterinherited
- isOpen → bool
-
Whether this box is currently open.
no setterinherited
- keys → Iterable
-
All the keys in the box.
no setterinherited
- lazy → bool
-
Whether this box is lazy or not.
no setterinherited
- length → int
-
The number of entries in the box.
no setterinherited
- name → String
-
The name of the box. Names are always lowercase.
no setterinherited
- path → String?
-
The location of the box in the file system. In the browser, this is null.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
values
→ Iterable<
E> -
All the values in the box.
no setter
Methods
-
add(
E value) → Future< int> -
Saves the
value
with an auto-increment key.inherited -
addAll(
Iterable< E> values) → Future<Iterable< int> > -
Saves all the
values
with auto-increment keys.inherited -
clear(
) → Future< int> -
Removes all entries from the box.
inherited
-
close(
) → Future< void> -
Closes the box.
inherited
-
compact(
) → Future< void> -
Induces compaction manually. This is rarely needed. You should consider
providing a custom compaction strategy instead.
inherited
-
containsKey(
dynamic key) → bool -
Checks whether the box contains the
key
.inherited -
delete(
dynamic key) → Future< void> -
Deletes the given
key
from the box.inherited -
deleteAll(
Iterable keys) → Future< void> -
Deletes all the given
keys
from the box.inherited -
deleteAt(
int index) → Future< void> -
Deletes the n-th key from the box.
inherited
-
deleteFromDisk(
) → Future< void> -
Removes the file which contains the box and closes the box.
inherited
-
flush(
) → Future< void> -
Flushes all pending changes of the box to disk.
inherited
-
get(
dynamic key, {E? defaultValue}) → E? -
Returns the value associated with the given
key
. If the key does not exist,null
is returned. -
getAt(
int index) → E? - Returns the value associated with the n-th key.
-
keyAt(
int index) → dynamic -
Get the n-th key in the box.
inherited
-
listenable(
{List? keys}) → ValueListenable< Box< T> > -
Available on Box<
Returns a ValueListenable which notifies its listeners when an entry in the box changes.T> , provided by the BoxX extension -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
put(
dynamic key, E value) → Future< void> -
Saves the
key
-value
pair.inherited -
putAll(
Map< dynamic, E> entries) → Future<void> -
Saves all the key - value pairs in the
entries
map.inherited -
putAt(
int index, E value) → Future< void> -
Associates the
value
with the n-th key. An exception is raised if the key does not exist.inherited -
toMap(
) → Map< dynamic, E> - Returns a map which contains all key - value pairs of the box.
-
toString(
) → String -
A string representation of this object.
inherited
-
valuesBetween(
{dynamic startKey, dynamic endKey}) → Iterable< E> -
Returns an iterable which contains all values starting with the value
associated with
startKey
(inclusive) to the value associated withendKey
(inclusive). -
watch(
{dynamic key}) → Stream< BoxEvent> -
Returns a broadcast stream of change events.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited