code: def build_selection(
      self,
      selection_streams,
      hvobj,
      operations,
      region_stream=None,
      cache=None,
  ):
      if cache is None:
          cache = {}
      sel_streams = [selection_streams.exprs_stream]
      hvobj = hvobj.apply(
          self._build_selection, streams=sel_streams, per_element=True
      )
      for op in operations:
          hvobj = op(hvobj)
      return hvobj
  
file_path: holoviews/holoviews/plotting/bokeh/selection.py
imports: import numpy
  from ...core.options import Store
  from ...core.overlay import NdOverlay, Overlay
  from ...selection import OverlaySelectionDisplay, SelectionDisplay
label_desc: Use image node_id 2 for calling the TabularSelectionDisplay obj's underlying member method code with example usage: obj.build_selection(selection_streams, hvobj, operations, region_stream, cache) and returns: hvobj