class_docstr: Interpret AST nodes to gleam useful debugging information. 
class_docstr_tok: ["Interpret","AST","nodes","to","gleam","useful","debugging","information","."]
code: def visit_BinOp(self, binop):
      left_explanation, left_result = self.visit(binop.left)
      right_explanation, right_result = self.visit(binop.right)
      symbol = operator_map[binop.op.__class__]
      explanation = "(%s %s %s)" % (
          left_explanation,
          symbol,
          right_explanation,
      )
      source = "__exprinfo_left %s __exprinfo_right" % (symbol,)
      co = self._compile(source)
      try:
          result = self.frame.eval(
              co,
              __exprinfo_left=left_result,
              __exprinfo_right=right_result,
          )
      except Exception:
          raise Failure(explanation)
      return explanation, result
  
imports: import sys
  import ast
  import py
  from py._code.assertion import _format_explanation, BuiltinAssertionError
label_desc: Use image node_id 10 for calling the DebugInterpreter obj's underlying member method code with example usage: obj.visit_BinOp(binop) and returns: explanation,  result