void apply(const Visitable& v, const Argument1& arg1, const Argument2& arg2) { VisitorWith2Arguments t(arg1, arg2); v.accept(t); }
void apply(const Visitable& v) { static Visitor t; v.accept(t); }
void apply(const Visitable& v, const Argument& arg) { VisitorWithArgument t(arg); v.accept(t); }
typename GeneralQuestion::type ask(const Visitable& v, const Argument& arg) { GeneralQuestion t(arg); v.accept(t); return t.answer; }
typename GeneralQuestion::type ask(const Visitable& v) { GeneralQuestion t; v.accept(t); return t.answer; }
// ----------------------------------------------------------------------------- // Name: TransitiveReductionFilter::TransitiveReductionFilter // Created: SLI 2010-09-08 // ----------------------------------------------------------------------------- TransitiveReductionFilter::TransitiveReductionFilter( const Visitable< DependencyVisitor_ABC >& metric, const Filter_ABC& filter ) : filter_( filter ) { metric.Apply( *this ); colormap_.resize( labels_.size(), boost::white_color ); BOOST_FOREACH( const T_Labels::value_type& label, labels_ ) { if( filter_.Check( label.second ) ) { boost::bfs_visitor< boost::null_visitor > visitor; boost::queue< T_Graph::vertex_descriptor > buffer; boost::iterator_property_map< T_ColorMap::iterator, boost::identity_property_map > propertymap( colormap_.begin(), boost::identity_property_map() ); boost::breadth_first_visit( graph_.graph(), graph_.vertex( label.second ), buffer, visitor, propertymap ); } } }
// ----------------------------------------------------------------------------- // Name: GraphMLSerializer constructor // Created: SLI 2012-07-09 // ----------------------------------------------------------------------------- GraphMLSerializer::GraphMLSerializer( const Visitable< DependencyVisitor_ABC >& dependencies, const Visitable< UnitObserver_ABC >& units ) { units.Apply( *this ); dependencies.Apply( *this ); }
apply_visitor(const Visitor& visitor, Visitable& visitable) { return visitable.apply_visitor(visitor); }
// ----------------------------------------------------------------------------- // Name: StronglyConnectedComponentsSerializer constructor // Created: SLI 2011-04-07 // ----------------------------------------------------------------------------- StronglyConnectedComponentsSerializer::StronglyConnectedComponentsSerializer( const Visitable< StronglyConnectedComponentsVisitor_ABC >& components ) { components.Apply( *this ); }
inline void apply_visitor(Visitor & v, Visitable & n) { BOOST_GEOMETRY_INDEX_ASSERT(&n, "null ptr"); n.apply_visitor(v); }
// ----------------------------------------------------------------------------- // Name: MetricSerializer constructor // Created: SLI 2010-08-20 // ----------------------------------------------------------------------------- MetricSerializer::MetricSerializer( const Visitable< MetricsVisitor_ABC >& metrics ) { metrics.Apply( *this ); }