def _in_iterating_context(node):
 parent = node.parent
 if isinstance(parent, astroid.For):
  return True
 elif isinstance(parent, astroid.Comprehension):
  if (parent.iter == node):
   return True
 elif isinstance(parent, astroid.CallFunc):
  if isinstance(parent.func, astroid.Name):
   parent_scope = parent.func.lookup(parent.func.name)[0]
   if (_is_builtin(parent_scope) and (parent.func.name in _accepts_iterator)):
    return True
  elif isinstance(parent.func, astroid.Getattr):
   if (parent.func.attrname == 'join'):
    return True
 elif (isinstance(parent, astroid.Assign) and isinstance(parent.targets[0], (astroid.List, astroid.Tuple))):
  if (len(parent.targets[0].elts) > 1):
   return True
 return False

def _in_iterating_context ( node ) : parent = node . parent if isinstance ( parent , astroid . For ) : return True elif isinstance ( parent , astroid . Comprehension ) : if ( parent . iter == node ) : return True elif isinstance ( parent , astroid . CallFunc ) : if isinstance ( parent . func , astroid . Name ) : parent_scope = parent . func . lookup ( parent . func . name ) [ 0 ] if ( _is_builtin ( parent_scope ) and ( parent . func . name in _accepts_iterator ) ) : return True elif isinstance ( parent . func , astroid . Getattr ) : if ( parent . func . attrname == 'join' ) : return True elif ( isinstance ( parent , astroid . Assign ) and isinstance ( parent . targets [ 0 ] , ( astroid . List , astroid . Tuple ) ) ) : if ( len ( parent . targets [ 0 ] . elts ) > 1 ) : return True return False
check if the node is being used as an iterator .