Should fix #73. I prefer this to #75 as matching on is_struct rather than the specific Graph struct would just delay a crash if passing in %NotAGraph{}. The guards in this request are a bit more explicit.
add_vertex would loop infinitely if passed non-graph value as first parameter b/c it would always match the last function head def for add_vertex/3, which was a recursive call. Making all function heads match first parameter on %Graph{} should solve this issue.
Should fix #73. I prefer this to #75 as matching on
is_struct
rather than the specificGraph
struct would just delay a crash if passing in%NotAGraph{}
. The guards in this request are a bit more explicit.add_vertex would loop infinitely if passed non-graph value as first parameter b/c it would always match the last function head def for add_vertex/3, which was a recursive call. Making all function heads match first parameter on %Graph{} should solve this issue.