class_docstr: cuspatial.GeoSeries enables GPU-backed storage and computation of
  shapely-like objects. Our goal is to give feature parity with GeoPandas.
  At this time, only from_geopandas and to_geopandas are directly supported.
  cuspatial GIS, indexing, and trajectory functions depend on the arrays
  stored in the `GeoArrowBuffers` object, accessible with the `points`,
  `multipoints`, `lines`, and `polygons` accessors.
  
  Examples
  --------
  
  >>> from shapely.geometry import Point
      import geopandas
      import cuspatial
      cuseries = cuspatial.GeoSeries(geopandas.GeoSeries(Point(-1, 0)))
      cuseries.points.xy
      0   -1.0
      1    0.0
      dtype: float64
class_docstr_tok: ["cuspatial.GeoSeries","enables","GPU-backed","storage","and","computation","of","shapely-like","objects",".","Our","goal","is","to","give","feature","parity","with","GeoPandas",".","At","this","time",",","only","from_geopandas","and","to_geopandas","are","directly","supported",".","cuspatial","GIS",",","indexing",",","and","trajectory","functions","depend","on","the","arrays","stored","in","the","`","GeoArrowBuffers","`","object",",","accessible","with","the","`","points","`",",","`","multipoints","`",",","`","lines","`",",","and","`","polygons","`","accessors",".","Examples","--","--","--","--",">",">",">","from","shapely.geometry","import","Point","import","geopandas","import","cuspatial","cuseries","=","cuspatial.GeoSeries","(","geopandas.GeoSeries","(","Point","(","-1",",","0",")",")",")","cuseries.points.xy","0","-1.0","1","0.0","dtype",":","float64"]
docstr: Reset the index of the GeoSeries.
  
  Parameters
  ----------
  level : int, str, tuple, or list, default None
      Only remove the given levels from the index. Removes all levels
      by default.
  drop : bool, default False
      If drop is False, create a new dataframe with the original
      index as a column. If drop is True, the original index is
      dropped.
  name : object, optional
      The name to use for the column containing the original
      Series values.
  inplace: bool, default False
      If True, the original GeoSeries is modified.
  
  Returns
  -------
  GeoSeries
      GeoSeries with reset index.
  
  Examples
  --------
  >>> points = gpd.GeoSeries([
      Point((-8, -8)),
      Point((-2, -2)),
  ], index=[1, 0])
  >>> print(points.reset_index())
  
  0    POINT (-8.00000 -8.00000)
  1    POINT (-2.00000 -2.00000)
  dtype: geometry
docstr_tok: ["Reset","the","index","of","the","GeoSeries",".","Parameters","--","--","--","--","--","level",":","int",",","str",",","tuple",",","or","list",",","default","None","Only","remove","the","given","levels","from","the","index",".","Removes","all","levels","by","default",".","drop",":","bool",",","default","False","If","drop","is","False",",","create","a","new","dataframe","with","the","original","index","as","a","column",".","If","drop","is","True",",","the","original","index","is","dropped",".","name",":","object",",","optional","The","name","to","use","for","the","column","containing","the","original","Series","values",".","inplace",":","bool",",","default","False","If","True",",","the","original","GeoSeries","is","modified",".","Returns","--","--","--","-","GeoSeries","GeoSeries","with","reset","index",".","Examples","--","--","--","--",">",">",">","points","=","gpd.GeoSeries","(","[","Point","(","(","-8",",","-8",")",")",",","Point","(","(","-2",",","-2",")",")",",","]",",","index=","[","1",",","0","]",")",">",">",">","print","(","points.reset_index","(",")",")","0","POINT","(","-8.00000","-8.00000",")","1","POINT","(","-2.00000","-2.00000",")","dtype",":","geometry"]
code: def reset_index(
      self,
      level=None,
      drop=False,
      name=None,
      inplace=False,
  ):
      """Reset the index of the GeoSeries.
  
      Parameters
      ----------
      level : int, str, tuple, or list, default None
          Only remove the given levels from the index. Removes all levels
          by default.
      drop : bool, default False
          If drop is False, create a new dataframe with the original
          index as a column. If drop is True, the original index is
          dropped.
      name : object, optional
          The name to use for the column containing the original
          Series values.
      inplace: bool, default False
          If True, the original GeoSeries is modified.
  
      Returns
      -------
      GeoSeries
          GeoSeries with reset index.
  
      Examples
      --------
      >>> points = gpd.GeoSeries([
          Point((-8, -8)),
          Point((-2, -2)),
      ], index=[1, 0])
      >>> print(points.reset_index())
  
      0    POINT (-8.00000 -8.00000)
      1    POINT (-2.00000 -2.00000)
      dtype: geometry
      """
      geo_series = self.copy(deep=False)
  
      # Create a cudf series with the same index as the GeoSeries
      # and use `cudf` reset_index to identify what our result
      # should look like.
      cudf_series = cudf.Series(
          cp.arange(len(geo_series.index)), index=geo_series.index
      )
      cudf_result = cudf_series.reset_index(level, drop, name, inplace)
  
      if not inplace:
          if isinstance(cudf_result, cudf.Series):
              geo_series.index = cudf_result.index
              return geo_series
          elif isinstance(cudf_result, cudf.DataFrame):
              # Drop was equal to False, so we need to create a
              # `GeoDataFrame` from the `GeoSeries`
              from cuspatial.core.geodataframe import GeoDataFrame
  
              # The columns of the `cudf.DataFrame` are the new
              # columns of the `GeoDataFrame`.
              columns = {
                  col: cudf_result[col] for col in cudf_result.columns
              }
              geo_result = GeoDataFrame(columns)
              geo_series.index = geo_result.index
              # Add the original `GeoSeries` as a column.
              if name:
                  geo_result[name] = geo_series
              else:
                  geo_result[0] = geo_series
              return geo_result
      else:
          self.index = cudf_series.index
          return None
  
imports: from functools import cached_property
  from numbers import Integral
  from typing import Optional, Tuple, TypeVar, Union
  import cupy
  import geopandas
  import numpy
  import pandas
  import pyarrow
  from geopandas.geoseries import GeoSeries
  from shapely.geometry import LineString, MultiLineString, MultiPoint, MultiPolygon, Point, Polygon
  from shapely.geometry.base import BaseGeometry, BaseMultipartGeometry
  import cudf
  from cudf._typing import ColumnLike
  from cudf.core.column.column import as_column
  from cudf.core.copy_types import GatherMap
  import cuspatial.io.pygeoarrow
  from cuspatial.core._column.geocolumn import ColumnType, GeoColumn
  from cuspatial.core._column.geometa import Feature_Enum, GeoMeta
  from cuspatial.core.binops.distance_dispatch import DistanceDispatch
  from cuspatial.core.binpreds.binpred_dispatch import CONTAINS_DISPATCH, CONTAINS_PROPERLY_DISPATCH, COVERS_DISPATCH, CROSSES_DISPATCH, DISJOINT_DISPATCH, EQUALS_DISPATCH, INTERSECTS_DISPATCH, OVERLAPS_DISPATCH, TOUCHES_DISPATCH, WITHIN_DISPATCH
  from cuspatial.utils.column_utils import contains_only_linestrings, contains_only_multipoints, contains_only_points, contains_only_polygons
label_desc: Use image node_id 29 for calling the GeoSeries obj's underlying member method code with example usage: obj.reset_index(level, drop, name, inplace) and returns: None, geo_series, geo_result