Method: RGL::Graph#implicit_graph

Defined in:
lib/rgl/implicit.rb

#implicit_graph {|result| ... } ⇒ ImplicitGraph

Return a new ImplicitGraph which is isomorphic (i.e. has same edges and vertices) to the receiver. It is a shortcut, also used by #edges_filtered_by and #vertices_filtered_by.

Yields:

  • (result)

Returns:



164
165
166
167
168
169
170
171
172
173
# File 'lib/rgl/implicit.rb', line 164

def implicit_graph
  result = ImplicitGraph.new do |g|
    g.vertex_iterator { |b| self.each_vertex(&b) }
    g.adjacent_iterator { |v, b| self.each_adjacent(v, &b) }
    g.directed = self.directed?
  end

  yield result if block_given? # let client overwrite defaults
  result
end