class_docstr: Gathers all local symbols from a function.
  
  It should not be use from outside a function, but can be used on a function
  (but in that case, parameters are not taken into account)
  
  >>> import gast as ast
  >>> from pythran import passmanager, backend
  >>> node = ast.parse('''
  ... def foo(a):
  ...     b = a + 1''')
  >>> pm = passmanager.PassManager("test")
  >>> [name.id for name in pm.gather(LocalNodeDeclarations, node)]
  ['b']
  >>> node = ast.parse('''
  ... for c in range(n):
  ...     b = a + 1''')
  >>> pm = passmanager.PassManager("test")
  >>> sorted([name.id for name in pm.gather(LocalNodeDeclarations, node)])
  ['b', 'c']
class_docstr_tok: ["Gathers","all","local","symbols","from","a","function",".","It","should","not","be","use","from","outside","a","function",",","but","can","be","used","on","a","function","(","but","in","that","case",",","parameters","are","not","taken","into","account",")",">",">",">","import","gast","as","ast",">",">",">","from","pythran","import","passmanager",",","backend",">",">",">","node","=","ast.parse","(","``","'","...","def","foo","(","a",")",":","...","b","=","a","+","1","''","'",")",">",">",">","pm","=","passmanager.PassManager","(","``","test","''",")",">",">",">","[","name.id","for","name","in","pm.gather","(","LocalNodeDeclarations",",","node",")","]","[","'","b","'","]",">",">",">","node","=","ast.parse","(","``","'","...","for","c","in","range","(","n",")",":","...","b","=","a","+","1","''","'",")",">",">",">","pm","=","passmanager.PassManager","(","``","test","''",")",">",">",">","sorted","(","[","name.id","for","name","in","pm.gather","(","LocalNodeDeclarations",",","node",")","]",")","[","'","b","'",",","'","c","'","]"]
docstr: Any node with Store context is a new declaration. 
docstr_tok: ["Any","node","with","Store","context","is","a","new","declaration","."]
code: def visit_Name(self, node):
      """Any node with Store context is a new declaration."""
      if isinstance(node.ctx, ast.Store):
          self.result.add(node)
  
file_path: catboost/contrib/python/pythran/pythran/analyses/local_declarations.py
imports: from pythran.passmanager import NodeAnalysis
  import gast
label_desc: Use image node_id 2 for calling the LocalNodeDeclarations obj's underlying member method code with example usage: obj.visit_Name(node) without return types