void transformer::from_note(const processed_object& o) { BOOST_LOG_SEV(lg, debug) << "Object is a note: " << o.id() << ". Note text: '" << o.comment().original_content() << "'"; if (o.comment().original_content().empty() || !o.comment().applicable_to_parent_object()) return; const auto& documentation(o.comment().documentation()); const auto& kvps(o.comment().key_value_pairs()); const sml::model& model(context_.model()); using dynamic::scope_types; if (o.child_node_id().empty()) { auto& module(module_for_qname(model.name())); module.documentation(documentation); const auto scope(scope_types::root_module); module.extensions(dynamic_workflow_.execute(scope, kvps)); return; } sml::module& module(module_for_id(o.child_node_id())); module.documentation(documentation); const auto scope(scope_types::any_module); module.extensions(dynamic_workflow_.execute(scope, kvps)); }
void grapher:: process_child_node(const vertex_descriptor_type& v, const processed_object& o) { if (!o.child_node_id().empty()) { const std::string id(o.child_node_id()); const vertex_descriptor_type cv(vertex_for_id(id)); boost::add_edge(v, cv, graph_); BOOST_LOG_SEV(lg, debug) << "Creating edge between '" << o.id() << "' and '" << id << "'"; const auto k(orphanage_.find(id)); if (k != orphanage_.end()) { BOOST_LOG_SEV(lg, debug) << "Object is no longer orphan: " << id << "'"; orphanage_.erase(k); } connected_ids_.insert(id); } if (connected_ids_.find(o.id()) == connected_ids_.end()) { orphanage_.insert(std::make_pair(o.id(), v)); BOOST_LOG_SEV(lg, debug) << "Vertex for object joined orphanage: " << o.id(); } }