class_docstr: Wrapper around Tf_ApiDefMap that handles querying and deletion.
  
  The OpDef protos are also stored in this class so that they could
  be queried by op name.
class_docstr_tok: ["Wrapper","around","Tf_ApiDefMap","that","handles","querying","and","deletion",".","The","OpDef","protos","are","also","stored","in","this","class","so","that","they","could","be","queried","by","op","name","."]
code: def __init__(self):
      op_def_proto = op_def_pb2.OpList()
      buf = c_api.TF_GetAllOpList()
      try:
          op_def_proto.ParseFromString(c_api.TF_GetBuffer(buf))
          self._api_def_map = c_api.TF_NewApiDefMap(buf)
      finally:
          c_api.TF_DeleteBuffer(buf)
  
      self._op_per_name = {}
      for op in op_def_proto.op:
          self._op_per_name[op.name] = op
  
imports: import contextlib
  from tensorflow.core.framework import api_def_pb2
  from tensorflow.core.framework import op_def_pb2
  from tensorflow.python.client import pywrap_tf_session
  from tensorflow.python.util import compat
  from tensorflow.python.util import tf_contextlib
label_desc: Use image node_id 1 to create a new ApiDefMap object from inherited base classes: object with example: obj = ApiDefMap()