class_docstr: A GPU GeoDataFrame object.
class_docstr_tok: ["A","GPU","GeoDataFrame","object","."]
code: def _apply_boolean_mask(
      self, mask: BooleanMask, keep_index=True
  ) -> T:
      geo_columns, data_columns = self._split_out_geometry_columns()
      data = data_columns._apply_boolean_mask(mask, keep_index)
  
      geo = GeoDataFrame(
          {name: geo_columns[name][mask.column] for name in geo_columns}
      )
  
      res = self.__class__._from_data(
          self._recombine_columns(geo, data)
      )
      if keep_index:
          res.index = data.index
      return res
  
imports: from typing import Dict, Tuple, TypeVar, Union
  import pandas
  from geopandas import GeoDataFrame
  from geopandas.geoseries import is_geometry_type
  import cudf
  from cudf.core.copy_types import BooleanMask, GatherMap
  from cuspatial.core._column.geocolumn import GeoColumn, GeoMeta
  from cuspatial.core.geoseries import GeoSeries
  from cuspatial.io.geopandas_reader import GeoPandasReader
label_desc: Use image node_id 11 for calling the GeoDataFrame obj's underlying member method code with example usage: obj._apply_boolean_mask(mask, keep_index) and returns: res