code: def _all_bools_with_nulls(lhs, rhs, bool_fill_value):
      # Internal utility to construct a boolean column
      # by combining nulls from `lhs` & `rhs`.
      if lhs.has_nulls() and rhs.has_nulls():
          result_mask = (
              lhs._get_mask_as_column() & rhs._get_mask_as_column()
          )
      elif lhs.has_nulls():
          result_mask = lhs._get_mask_as_column()
      elif rhs.has_nulls():
          result_mask = rhs._get_mask_as_column()
      else:
          result_mask = None
  
      result_col = column.full(
          size=len(lhs),
          fill_value=bool_fill_value,
          dtype=cudf.dtype(np.bool_),
      )
      if result_mask is not None:
          result_col = result_col.set_mask(result_mask.as_mask())
      return result_col
  
imports: import decimal
  import functools
  import os
  import traceback
  import warnings
  from typing import FrozenSet, Set, Union
  import numpy
  import pandas
  import rmm
  import cudf
  import cudf.api.types
  from cudf.core import column
  from cudf.core.buffer import as_buffer
label_desc: Use image node_id 11 for calling a global function with example usage: _all_bools_with_nulls(lhs, rhs, bool_fill_value) and returns: result_col