*operation* void isSCCEdgeForcedByThru(Cd_graph *cd, int fromv, int tov, int &result) *wrapper* Path_constraint_exp *prefix* (@ result = 0; @) *wrapper* Require_through *prefix* (@ through->isSCCEdgeForcedByThru(cd, fromv, tov, result); @) *wrapper* Require_bypassing *prefix* (@ if (through) through->isSCCEdgeForcedByThru(cd, fromv, tov, result); else result = 0; @) *wrapper* Through_path_constraint *prefix* (@ through->isSCCEdgeForcedByThru(cd, fromv, tov, result); @) *wrapper* Meta_edge_Commalist *prefix* (@ Meta_edge_list_iterator next(*this); Meta_edge* each; while (each = next()) { each->isSCCEdgeForcedByThru(cd, fromv, tov, result); if (result) return; } result = 0; @) *wrapper* Meta_edge *prefix* (@ @) *wrapper* Meta_alternation_edge *prefix* (@ int sv = 0; int tv = 0; Vertex* s = NULL; Vertex* t = NULL; from->get_single_vertex(s); to->get_single_vertex(t); cd->get_vert_scc(s,sv); cd->get_vert_scc(t,tv); result = ((sv == fromv) && (tv == tov)); @) *wrapper* Meta_construction_edge *prefix* (@ int sv = 0; int tv = 0; Vertex* s = NULL; Vertex* t = NULL; from->get_single_vertex(s); to->get_single_vertex(t); cd->get_vert_scc(s,sv); cd->get_vert_scc(t,tv); result = ((sv == fromv) && (tv == tov)); @) *wrapper* Meta_inheritance_edge *prefix* (@ int sv = 0; int tv = 0; Vertex* s = NULL; Vertex* t = NULL; from->get_single_vertex(s); to->get_single_vertex(t); cd->get_vert_scc(s,sv); cd->get_vert_scc(t,tv); result = ((sv == fromv) && (tv == tov)); @) *wrapper* Meta_repetition_edge *prefix* (@ int sv = 0; int tv = 0; Vertex* s = NULL; Vertex* t = NULL; from->get_single_vertex(s); to->get_single_vertex(t); cd->get_vert_scc(s,sv); cd->get_vert_scc(t,tv); result = ((sv == fromv) && (tv == tov)); @)