class_docstr: Visitor to remove ast nodes
  
  :param symbols: set of symbol that are removable.
class_docstr_tok: ["Visitor","to","remove","ast","nodes",":","param","symbols",":","set","of","symbol","that","are","removable","."]
code: def visitFor(self, node):
      target = self.visit(node.target)
      for_iter = self.visit(node.iter)
      self.reduce(node.body)
  
      len_body = len(node.body)
      if len_body == 0:
          node.body.append(
              _ast.Pass(lineno=node.lineno, col_offset=node.col_offset)
          )
  
      self.reduce(node.orelse)
  
      len_orelse = len(node.orelse)
  
      return (
          (len_body == 0) and (len_orelse == 0) and target and for_iter
      )
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  import _ast
  from ...asttools import Visitor, visit_children
label_desc: Use image node_id 8 for calling the PruneVisitor obj's underlying member method code with example usage: obj.visitFor(node) and returns: unknown