diff --git a/apps/graph/storage_cartesian_function_store.cpp b/apps/graph/storage_cartesian_function_store.cpp index 3f5b734e0..be6649b9a 100644 --- a/apps/graph/storage_cartesian_function_store.cpp +++ b/apps/graph/storage_cartesian_function_store.cpp @@ -12,18 +12,20 @@ namespace Graph { StorageCartesianFunctionStore::StorageCartesianFunctionStore() : Shared::StorageFunctionStore() { - addEmptyModel(); + Ion::Storage::Record::ErrorStatus error = addEmptyModel(); + assert(error == Ion::Storage::Record::ErrorStatus::None); } void StorageCartesianFunctionStore::removeAll() { StorageFunctionStore::removeAll(); - addEmptyModel(); + Ion::Storage::Record::ErrorStatus error = addEmptyModel(); + assert(error == Ion::Storage::Record::ErrorStatus::None); } -void StorageCartesianFunctionStore::addEmptyModel() { +Ion::Storage::Record::ErrorStatus StorageCartesianFunctionStore::addEmptyModel() { Ion::Storage::Record::ErrorStatus error; StorageCartesianFunction newModel = StorageCartesianFunction::NewModel(&error); - assert(error == Ion::Storage::Record::ErrorStatus::None); + return error; } void StorageCartesianFunctionStore::privateSetMemoizedModelAtIndex(int cacheIndex, Ion::Storage::Record record) const { diff --git a/apps/graph/storage_cartesian_function_store.h b/apps/graph/storage_cartesian_function_store.h index 02ca4ae9f..1d5c080a9 100644 --- a/apps/graph/storage_cartesian_function_store.h +++ b/apps/graph/storage_cartesian_function_store.h @@ -17,7 +17,7 @@ public: char symbol() const override { return 'x'; } void removeAll() override; private: - void addEmptyModel(); + Ion::Storage::Record::ErrorStatus addEmptyModel() override; const char * modelExtension() const override { return Shared::GlobalContext::funcExtension; } void privateSetMemoizedModelAtIndex(int cacheIndex, Ion::Storage::Record record) const override; void moveMemoizedModel(int previousIndex, int nextIndex) const override; diff --git a/apps/shared/storage_expression_model_store.h b/apps/shared/storage_expression_model_store.h index db157c663..5b5c63cd2 100644 --- a/apps/shared/storage_expression_model_store.h +++ b/apps/shared/storage_expression_model_store.h @@ -21,6 +21,7 @@ public: virtual StorageExpressionModel * definedModelAtIndex(int i) const; // Add and Remove + virtual Ion::Storage::Record::ErrorStatus addEmptyModel() = 0; virtual void removeAll(); void removeModel(StorageExpressionModel * f);