class_docstr: Inline one line functions.
  
  >>> import gast as ast
  >>> from pythran import passmanager, backend
  >>> pm = passmanager.PassManager("test")
  >>> node = ast.parse('''
  ... def foo(a, b):
  ...     return b + b * a
  ... def bar(b):
  ...     return foo(2 * b, b) * foo(b, b)''')
  >>> _, node = pm.apply(Inlining, node)
  >>> print(pm.dump(backend.Python, node))
  def foo(a, b):
      return (b + (b * a))
  def bar(b):
      __pythran_inlinefooa0 = (2 * b)
      __pythran_inlinefoob0 = b
      __pythran_inlinefooa1 = b
      __pythran_inlinefoob1 = b
      return ((__pythran_inlinefoob0 + (__pythran_inlinefoob0 * __pythran_inlinefooa0)) * (__pythran_inlinefoob1 + (__pythran_inlinefoob1 * __pythran_inlinefooa1)))
docstr: Add new variable definition before the Statement. 
docstr_tok: ["Add","new","variable","definition","before","the","Statement","."]
code: def visit_Stmt(self, node):
      """Add new variable definition before the Statement."""
      save_defs, self.defs = self.defs or list(), list()
      self.generic_visit(node)
      new_defs, self.defs = self.defs, save_defs
      return new_defs + [node]
  
file_path: pythran/pythran/optimizations/inlining.py
imports: from pythran.analyses import Inlinable, Aliases
  from pythran.passmanager import Transformation
  import gast
  import copy
label_desc: Use image node_id 2 for calling the Inlining obj's underlying member method code with example usage: obj.visit_Stmt(node) and returns: unknown