33 lines
1.0 KiB
C++
33 lines
1.0 KiB
C++
#include "matador/object/internal/shadow_schema.hpp"
|
|
|
|
#include "matador/object/schema.hpp"
|
|
#include "matador/object/schema_node.hpp"
|
|
|
|
namespace matador::object::internal {
|
|
shadow_schema::shadow_schema( object::schema& s )
|
|
: schema_(s) {}
|
|
|
|
schema& shadow_schema::schema() const {
|
|
return schema_;
|
|
}
|
|
|
|
bool shadow_schema::schema_contains( const std::type_index& ti ) const {
|
|
return schema_.contains(ti);
|
|
}
|
|
|
|
utils::result<shadow_schema::node_ptr, utils::error> shadow_schema::find_node( const std::type_index& type_index ) const {
|
|
return schema_.find_node(type_index);
|
|
}
|
|
|
|
utils::result<shadow_schema::node_ptr, utils::error> shadow_schema::find_node( const std::string& name ) const {
|
|
return schema_.find_node(name);
|
|
}
|
|
|
|
utils::result<shadow_schema::node_ptr, utils::error> shadow_schema::attach_node( const std::shared_ptr<schema_node>& node ) const {
|
|
return schema_.attach_node(node, "");
|
|
}
|
|
|
|
utils::result<void, utils::error> shadow_schema::detach_node( const std::shared_ptr<schema_node>& node ) const {
|
|
return schema_.detach(node);
|
|
}
|
|
} |