void Feature::Visit(IVisitable& visitable) { if (m_pLanguage != nullptr) visitable.Accept(*m_pLanguage); visitable.Accept(Tags()); visitable.Accept(*this); if (m_pBackground != nullptr) { m_pBackground->Visit(visitable); } for (ScenarioDefinition* scenario : m_ScenarioDefinitions) { scenario->Visit(visitable); } }
bool IsMatch(const IVisitable& o) { matched_ = nullptr; o.Accept(*this); return matched_ != nullptr; }
PrivateVisitor(IVisitable& v) { v.Accept(*this); }
void Example::Visit(IVisitable& visitable) { visitable.Accept(*this); }