code: def pairwise_linestring_polygon_distance(
      linestrings: GeoSeries, polygons: GeoSeries
  ):
      """Compute distance between (multi)linestrings-(multi)polygons pairs.
  
      The distance between a (multi)linestrings and a (multi)polygon
      is defined as the shortest distance between every segment in the
      multilinestring and every edge of the (multi)polygon. If the
      multilinestring and multipolygon intersect, the distance is 0.
  
      This algorithm computes distance pairwise. The ith row in the result is
      the distance between the ith (multi)linestring in `linestrings` and the ith
      (multi)polygon in `polygons`.
  
      Parameters
      ----------
      linestrings : GeoSeries
          The (multi)linestrings to compute the distance from.
      polygons : GeoSeries
          The (multi)polygons to compute the distance from.
  
      Returns
      -------
      distance : cudf.Series
  
      Notes
      -----
      The input `GeoSeries` must contain a single type geometry.
      For example, `linestrings` series cannot contain both linestrings and
      polygons.
  
      Examples
      --------
      Compute distance between a linestring and a polygon:
      >>> from shapely.geometry import LineString, Polygon
      >>> lines = cuspatial.GeoSeries([
      ...     LineString([(0, 0), (1, 1)])])
      >>> polys = cuspatial.GeoSeries([
      ...     Polygon([(-1, -1), (-1, 0), (-2, 0), (-1, -1)])
      ... ])
      >>> cuspatial.pairwise_linestring_polygon_distance(lines, polys)
      0    1.0
      dtype: float64
  
      Compute distance between a multipoint and a multipolygon
      >>> from shapely.geometry import MultiLineString, MultiPolygon
      >>> lines = cuspatial.GeoSeries([
      ...     MultiLineString([
      ...             LineString([(0, 0), (1, 1)]),
      ...             LineString([(1, 1), (2, 2)])])
      ...     ])
      >>> polys = cuspatial.GeoSeries([
      ...     MultiPolygon([
      ...             Polygon([(-1, -1), (-1, 0), (-2, 0), (-1, -1)]),
      ...             Polygon([(-2, 0), (-3, 0), (-3, -1), (-2, 0)])])
      ...     ])
      >>> cuspatial.pairwise_linestring_polygon_distance(lines, polys)
      0    1.0
      dtype: float64
      """
  
      if len(linestrings) != len(polygons):
          raise ValueError("Unmatched input geoseries length.")
  
      if len(linestrings) == 0:
          return cudf.Series(dtype=linestrings.lines.xy.dtype)
  
      if not contains_only_linestrings(linestrings):
          raise ValueError(
              "`linestrings` array must contain only linestrings"
          )
  
      if not contains_only_polygons(polygons):
          raise ValueError("`polygon` array must contain only polygons")
  
      linestrings_column = linestrings.lines.column()
      polygon_column = polygons.polygons.column()
  
      return Series._from_data(
          {
              None: c_pairwise_line_poly_dist(
                  linestrings_column, polygon_column
              )
          }
      )
  
file_path: cuspatial/python/cuspatial/cuspatial/core/spatial/distance.py
imports: import cudf
  from cudf import DataFrame, Series
  from cudf.core.column import as_column
  from cuspatial._lib.distance import directed_hausdorff_distance, haversine_distance, pairwise_linestring_distance, pairwise_linestring_polygon_distance, pairwise_point_distance, pairwise_point_linestring_distance, pairwise_point_polygon_distance, pairwise_polygon_distance
  from cuspatial._lib.types import CollectionType
  from cuspatial.core.geoseries import GeoSeries
  from cuspatial.utils.column_utils import contains_only_linestrings, contains_only_multipoints, contains_only_points, contains_only_polygons
label_desc: Use image node_id 7 for calling a global function with example usage: pairwise_linestring_polygon_distance(linestrings, polygons) and returns: Series, cudf