diff --git a/src/dodb/index.cr b/src/dodb/index.cr index 5f9ea3a..5e5bb9e 100644 --- a/src/dodb/index.cr +++ b/src/dodb/index.cr @@ -93,6 +93,12 @@ class DODB::Index(V) < DODB::Indexer(V) @storage[key] = new_value end + def update_or_create(index : String, new_value : V) + update index, new_value + rescue MissingEntry + @storage << new_value + end + def delete(index : String) key = get_key index