void PSIVisitor::visit_comp_pkg_body(const std::vector<IBaseItem *> &items) { std::vector<IBaseItem *>::const_iterator it=items.begin(); for (; it!=items.end(); it++) { switch ((*it)->getType()) { case IBaseItem::TypeAction: visit_action(static_cast<IAction *>(*it)); break; case IBaseItem::TypeStruct: visit_struct(static_cast<IStruct *>(*it)); break; } } }
void PSIVisitor::visit_comp_pkg_body(const std::vector<IBaseItem *> &items) { std::vector<IBaseItem *>::const_iterator it=items.begin(); for (; it!=items.end(); it++) { fprintf(stdout, " -- item %p %d\n", *it, (*it)->getType()); fflush(stdout); push_scope(*it); switch ((*it)->getType()) { case IBaseItem::TypeAction: fprintf(stdout, "---> visit_action\n"); fflush(stdout); visit_action(dynamic_cast<IAction *>(*it)); fprintf(stdout, "<--- visit_action\n"); fflush(stdout); break; case IBaseItem::TypeStruct: visit_struct(dynamic_cast<IStruct *>(*it)); break; } pop_scope(); } }