def bfs_search_tree_from (v)
      require 'laser/third_party/rgl/adjacency'
      bfs  = bfs_iterator(v)
      tree = DirectedAdjacencyGraph.new
      bfs.set_tree_edge_event_handler { |from, to|
        tree.add_edge(from, to)
      }
      bfs.set_to_end				# does the search
      tree
    end
def bfs_search_tree_from (v)
      require 'laser/third_party/rgl/adjacency'
      bfs  = bfs_iterator(v)
      tree = DirectedAdjacencyGraph.new
      bfs.set_tree_edge_event_handler { |from, to|
        tree.add_edge(from, to)
      }
      bfs.set_to_end				# does the search
      tree
    end
Returns a DirectedAdjacencyGraph, which represents a BFS search tree
 starting at _v_.  This method uses the tree_edge_event of BFSIterator
 to record all tree edges of the search tree in the result.