summaryrefslogtreecommitdiff
path: root/src/core/model/Domain.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/model/Domain.hpp')
-rw-r--r--src/core/model/Domain.hpp26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/core/model/Domain.hpp b/src/core/model/Domain.hpp
index e348136..112f2fa 100644
--- a/src/core/model/Domain.hpp
+++ b/src/core/model/Domain.hpp
@@ -139,6 +139,12 @@ private:
FieldType fieldType;
Owned<Type> primitiveType;
+protected:
+ void doResolve(std::vector<Rooted<Managed>> &res,
+ const std::vector<std::string> &path, Filter filter,
+ void *filterData, unsigned idx,
+ VisitorSet &visited) override;
+
public:
const bool optional;
@@ -220,7 +226,7 @@ public:
* the attribute specification of a descriptor is done by referencing an
* appropriate StructType that contains all permitted keys and value types.
*
- * TODO: What aout optional attributes?
+ * TODO: What about optional attributes?
*
* In XML terms the difference between primitive fields and attributes can be
* explained as the difference between node attributes and node children.
@@ -241,6 +247,12 @@ private:
Owned<StructType> attributesDescriptor;
ManagedVector<FieldDescriptor> fieldDescriptors;
+protected:
+ void doResolve(std::vector<Rooted<Managed>> &res,
+ const std::vector<std::string> &path, Filter filter,
+ void *filterData, unsigned idx,
+ VisitorSet &visited) override;
+
public:
Descriptor(Manager &mgr, std::string name, Handle<Domain> domain,
// TODO: What would be a wise default value for attributes?
@@ -351,6 +363,12 @@ private:
Owned<StructuredClass> isa;
ManagedVector<FieldDescriptor> parents;
+protected:
+ void doResolve(std::vector<Rooted<Managed>> &res,
+ const std::vector<std::string> &path, Filter filter,
+ void *filterData, unsigned idx,
+ VisitorSet &visited) override;
+
public:
const bool transparent;
@@ -399,6 +417,12 @@ private:
ManagedVector<AnnotationClass> annotationClasses;
ManagedVector<Typesystem> typesystems;
+protected:
+ void doResolve(std::vector<Rooted<Managed>> &res,
+ const std::vector<std::string> &path, Filter filter,
+ void *filterData, unsigned idx,
+ VisitorSet &visited) override;
+
public:
Domain(Manager &mgr, std::string name)
// TODO: Can a domain have a parent?