FUNCTION path_reversed
(a_path : path) : oriented_path;
LOCAL the_reverse : oriented_path ; END_LOCAL; IF ('TOPOLOGY_SCHEMA.ORIENTED_PATH' IN TYPEOF (a_path) ) THEN the_reverse := dummy_tri || path(list_of_topology_reversed (a_path.edge_list)) || oriented_path(a_path\oriented_path.path_element, NOT(a_path\oriented_path.orientation)) ; ELSE the_reverse := dummy_tri || path(list_of_topology_reversed (a_path.edge_list)) || oriented_path(a_path, FALSE); END_IF;
RETURN (the_reverse); END_FUNCTION; -- path_reversed
|