diff options
Diffstat (limited to 'src/core/model/Project.cpp')
-rw-r--r-- | src/core/model/Project.cpp | 42 |
1 files changed, 8 insertions, 34 deletions
diff --git a/src/core/model/Project.cpp b/src/core/model/Project.cpp index fc08660..a0f1f08 100644 --- a/src/core/model/Project.cpp +++ b/src/core/model/Project.cpp @@ -30,17 +30,13 @@ namespace model { Project::Project(Manager &mgr) : Node(mgr), systemTypesystem(acquire(new SystemTypesystem(mgr))), - documents(this), - domains(this), - typesystems(this) + documents(this) { } bool Project::doValidate(Logger &logger) const { - return continueValidation(documents, logger) & - continueValidation(domains, logger) & - continueValidation(typesystems, logger); + return continueValidation(documents, logger); } Rooted<SystemTypesystem> Project::getSystemTypesystem() @@ -50,16 +46,8 @@ Rooted<SystemTypesystem> Project::getSystemTypesystem() Rooted<Typesystem> Project::createTypesystem(const std::string &name) { - Rooted<Typesystem> typesystem{ + return Rooted<Typesystem>{ new Typesystem{getManager(), systemTypesystem, name}}; - addTypesystem(typesystem); - return typesystem; -} - -void Project::addTypesystem(Handle<Typesystem> typesystem) -{ - invalidate(); - typesystems.push_back(typesystem); } Rooted<Document> Project::createDocument(const std::string &name) @@ -69,39 +57,25 @@ Rooted<Document> Project::createDocument(const std::string &name) return document; } -void Project::addDocument(Handle<Document> document) -{ - invalidate(); - documents.push_back(document); -} - Rooted<Domain> Project::createDomain(const std::string &name) { - Rooted<Domain> domain{new Domain(getManager(), systemTypesystem, name)}; - addDomain(domain); - return domain; + return Rooted<Domain>{new Domain(getManager(), systemTypesystem, name)}; } -void Project::addDomain(Handle<Domain> domain) +void Project::addDocument(Handle<Document> document) { invalidate(); - domains.push_back(domain); + documents.push_back(document); } -const NodeVector<Document> &Project::getDocuments() { return documents; } - -const NodeVector<Domain> &Project::getDomains() { return domains; } - -const NodeVector<Typesystem> &Project::getTypesystems() { return typesystems; } +const NodeVector<Document> &Project::getDocuments() const { return documents; } } namespace RttiTypes { const Rtti Project = RttiBuilder<model::Project>("Project") .parent(&Node) .composedOf(&Document) - .composedOf(&Typesystem) - .composedOf(&SystemTypesystem) - .composedOf(&Domain); + .composedOf(&SystemTypesystem); } } |