class_docstr: a immutable object holding a source code fragment,
  possibly deindenting it.
docstr: return True if source is parseable, heuristically
  deindenting it by default.
docstr_tok: ["return","True","if","source","is","parseable",",","heuristically","deindenting","it","by","default","."]
code: def isparseable(self, deindent=True):
      """return True if source is parseable, heuristically
      deindenting it by default.
      """
      try:
          import parser
      except ImportError:
          syntax_checker = lambda x: compile(x, "asd", "exec")
      else:
          syntax_checker = parser.suite
  
      if deindent:
          source = str(self.deindent())
      else:
          source = str(self)
      try:
          # compile(source+'\n', "x", "exec")
          syntax_checker(source + "\n")
      except KeyboardInterrupt:
          raise
      except Exception:
          return False
      else:
          return True
  
imports: from __future__ import generators
  from bisect import bisect_right
  import sys
  import inspect, tokenize
  import py
  from types import ModuleType
label_desc: Use image node_id 12 for calling the Source obj's underlying member method code with example usage: obj.isparseable(deindent) and returns: True, False