class_docstr: Tracks nodes and edges of a directed graph and supports basic operations on them.
class_docstr_tok: ["Tracks","nodes","and","edges","of","a","directed","graph","and","supports","basic","operations","on","them","."]
docstr: Searches the graph for a sub-graph that matches the given pattern
  and returns the first match it finds.
docstr_tok: ["Searches","the","graph","for","a","sub-graph","that","matches","the","given","pattern","and","returns","the","first","match","it","finds","."]
code: def search(self, pattern):
      """Searches the graph for a sub-graph that matches the given pattern
      and returns the first match it finds.
      """
      for node in self.nodes.values():
          match, following = pattern.match(self, node)
          if match:
              return match, following
      return [], None
  
imports: from __future__ import absolute_import, division, print_function
  import os
  import re
  from random import getrandbits
  import inspect
  import numpy
label_desc: Use image node_id 12 for calling the Graph obj's underlying member method code with example usage: obj.search(pattern) and returns: list,  None, match,  following