diff --git a/store/store.cc b/store/store.cc
index c85d831b7e058f2d525860c9105e3e61aca415e5..69ca4f8c2bb1586a32c3d794a776af8a5b7ac36d 100644 (file)
--- a/store/store.cc
+++ b/store/store.cc
-#include "store/store.h"
-#include "reader/reader.h"
-#include "visitor/visitor.h"
-
-#include <iostream>
-
+#include "store/module.ih"
namespace odc {
-template<class T, class A> T join(const A & begin, const A & end, const T &sep) {
- T result;
-
- if (begin != end) {
- A it = begin;
- result.append(*it);
- for (++it; it != end; ++it) {
- result.append(sep).append(*it);
- }
- }
-
- return result;
-}
-
-std::string TypePath::toString() const {
- return join(begin(), end(), std::string("->"));
-}
-
const std::string Store::TYPENAME("Stores.Store^");
const TopTypeProxy<Store> Store::PROXY;
void Store::accept(Visitor &visitor) const {}
-const std::string Elem::TYPENAME("Stores.Elem^");
-const TypeProxy<Elem, Store> Elem::PROXY;
-
-Elem::Elem(INTEGER id) : Store(id) {}
-
-const std::string &Elem::getTypeName() const {
- return TYPENAME;
-}
-
-void Elem::internalize(Reader &reader) {
- Store::internalize(reader);
- if (reader.isCancelled()) return;
- reader.readVersion(0, 0);
-}
-
-const std::string Model::TYPENAME("Models.Model^");
-const TypeProxy<Model, Elem> Model::PROXY;
-
-Model::Model(INTEGER id) : Elem(id) {}
-
-const std::string &Model::getTypeName() const {
- return TYPENAME;
-}
-
-void Model::internalize(Reader &reader) {
- Elem::internalize(reader);
- if (reader.isCancelled()) return;
- reader.readVersion(0, 0);
-}
-
-const std::string ContainerModel::TYPENAME("Containers.Model^");
-const TypeProxy<ContainerModel, Model> ContainerModel::PROXY;
-
-ContainerModel::ContainerModel(INTEGER id) : Model(id) {}
-
-const std::string &ContainerModel::getTypeName() const {
- return TYPENAME;
-}
-
-void ContainerModel::internalize(Reader &reader) {
- Model::internalize(reader);
- if (reader.isCancelled()) return;
- reader.readVersion(0, 0);
-}
-
} // namespace odc