class_docstr: a immutable object holding a source code fragment,
  possibly deindenting it.
docstr: return a copy of the source object with
  'before' and 'after' wrapped around it.
docstr_tok: ["return","a","copy","of","the","source","object","with","'before","'","and","'after","'","wrapped","around","it","."]
code: def putaround(self, before="", after="", indent=" " * 4):
      """return a copy of the source object with
      'before' and 'after' wrapped around it.
      """
      before = Source(before)
      after = Source(after)
      newsource = Source()
      lines = [(indent + line) for line in self.lines]
      newsource.lines = before.lines + lines + after.lines
      return newsource
  
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 7 for calling the Source obj's underlying member method code with example usage: obj.putaround(before, after, indent) and returns: newsource