code: def _once(self):
      self.forward(size=self._clock.buflen())
  
      for indicator in self._lineiterators[LineIterator.IndType]:
          indicator._once()
  
      for observer in self._lineiterators[LineIterator.ObsType]:
          observer.forward(size=self.buflen())
  
      for data in self.datas:
          data.home()
  
      for indicator in self._lineiterators[LineIterator.IndType]:
          indicator.home()
  
      for observer in self._lineiterators[LineIterator.ObsType]:
          observer.home()
  
      self.home()
  
      # These 3 remain empty for a strategy and therefore play no role
      # because a strategy will always be executed on a next basis
      # indicators are each called with its min period
      self.preonce(0, self._minperiod - 1)
      self.oncestart(self._minperiod - 1, self._minperiod)
      self.once(self._minperiod, self.buflen())
  
      for line in self.lines:
          line.oncebinding()
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import collections
  import operator
  import sys
  from .utils.py3 import map, range, zip, with_metaclass, string_types
  from .utils import DotDict
  from .lineroot import LineRoot, LineSingle
  from .linebuffer import LineActions, LineNum
  from .lineseries import LineSeries, LineSeriesMaker
  from .dataseries import DataSeries
  from .None import metabase
label_desc: Use image node_id 11 for calling the LineIterator obj's underlying member method code with example usage: obj._once() without return types