[shared] Clean old_storage_expression_model_store

This commit is contained in:
Émilie Feral
2018-10-10 14:32:57 +02:00
parent af41c42a97
commit 8e13ba32ee
2 changed files with 0 additions and 89 deletions

View File

@@ -1,59 +0,0 @@
#include "storage_expression_model_store.h"
#include "function.h"
#include <assert.h>
namespace Shared {
StorageExpressionModel StorageExpressionModelStore::addEmptyModel() {
int modelsCount = numberOfModels();
StorageExpressionModel newModel = emptyModel();
setModelAtIndex(newModel, modelsCount);
return newModel;
}
void StorageExpressionModelStore::removeModel(StorageExpressionModel f) {
f.destroy();
}
void StorageExpressionModelStore::removeAll() {
while (!modelAtIndex(0).isEmpty()) {
modelAtIndex(0).destroy();
}
}
StorageExpressionModel StorageExpressionModelStore::definedModelAtIndex(int i) {
assert(i >= 0 && i < numberOfModels());
int index = 0;
int currentModelIndex = 0;
while (true) {
assert(currentModelIndex < numberOfModels());
if (modelAtIndex(currentModelIndex).isDefined()) {
if (i == index) {
return modelAtIndex(currentModelIndex);
}
index++;
}
currentModelIndex++;
}
}
int StorageExpressionModelStore::numberOfDefinedModels() {
int result = 0;
int i = 0;
while (!modelAtIndex(i).isEmpty()) {
if (modelAtIndex(i).isDefined()) {
result++;
}
i++;
}
return result;
}
void StorageExpressionModelStore::tidy() {
int modelsCount = numberOfModels();
for (int i = 0; i < modelsCount; i++) {
modelAtIndex(i).tidy();
}
}
}

View File

@@ -1,30 +0,0 @@
#ifndef STORAGE_SHARED_EXPRESSION_MODEL_STORE_H
#define STORAGE_SHARED_EXPRESSION_MODEL_STORE_H
#include "storage_expression_model.h"
#include <stdint.h>
namespace Shared {
// StorageExpressionModelStore is a handle to Ion::sharedStorage
class StorageExpressionModelStore {
// TODO find better name (once we remove ExpressionModelStore?)
public:
virtual StorageExpressionModel modelAtIndex(int i) = 0;
StorageExpressionModel addEmptyModel();
void removeModel(StorageExpressionModel f);
virtual void removeAll();
virtual int numberOfModels() const;
virtual StorageExpressionModel definedModelAtIndex(int i);
int numberOfDefinedModels();
virtual void tidy();
protected:
virtual StorageExpressionModel emptyModel() = 0;
virtual StorageExpressionModel nullModel() = 0;
virtual void setModelAtIndex(StorageExpressionModel f, int i) = 0;
};
}
#endif