code: def iter_children_func(node):
      # type: (AST) -> Callable
      """
      Returns a function which yields all direct children of a AST node,
      skipping children that are singleton nodes.
      The function depends on whether ``node`` is from ``ast`` or from the ``astroid`` module.
      """
      return (
          iter_children_astroid
          if hasattr(node, "get_children")
          else iter_children_ast
      )
  
imports: import ast
  import collections
  import io
  import sys
  import token
  import tokenize
  from abc import ABCMeta
  from ast import Module, expr, AST
  from typing import Callable, Dict, Iterable, Iterator, List, Optional, Tuple, Union, cast, Any, TYPE_CHECKING
  from six import iteritems
label_desc: Use image node_id 5 for calling a global function with example usage: iter_children_func(node) and returns: unknown