code: def __forward_recursive(
      self, forward_sequence, variable=None, function=None
  ):
      if not function and variable not in self.variable_inputs:
          return
      for func in (
          [function] if function else self.variable_inputs[variable]
      ):
          if func.forward_complete:
              continue
          for input_function in func.input_functions:
              self.__forward_recursive(
                  forward_sequence, function=input_function
              )
          forward_sequence.append(func)
          func.forward_complete = True
  
file_path: nnabla/python/test/core/legacy_network.py
imports: from nnabla.logger import logger
  import nnabla.function
label_desc: Use image node_id 3 for calling the Network obj's underlying member method code with example usage: obj.__forward_recursive(forward_sequence, variable, function) without return types