32
32
try :
33
33
if sys .version_info >= (3 , 6 ):
34
34
import shapely .geometry
35
+
35
36
IS_SHAPELY_AVAILABLE = True
36
37
except ImportError :
37
38
...
@@ -536,11 +537,10 @@ def _literal_value_hash_key(self, value):
536
537
537
538
def _tuplize (values ):
538
539
"""Recursively convert `values` to a tuple of tuples."""
540
+
539
541
def tuplize_iter (values ):
540
542
yield from (
541
- tuple (tuplize_iter (value ))
542
- if util .is_iterable (value )
543
- else value
543
+ tuple (tuplize_iter (value )) if util .is_iterable (value ) else value
544
544
for value in values
545
545
)
546
546
@@ -665,7 +665,7 @@ def _literal_value_hash_key(self, value):
665
665
shapely .geometry .Polygon ,
666
666
shapely .geometry .MultiLineString ,
667
667
shapely .geometry .MultiPoint ,
668
- shapely .geometry .MultiPolygon
668
+ shapely .geometry .MultiPolygon ,
669
669
)
670
670
if isinstance (value , geo_shapes ):
671
671
return self , value .wkt
@@ -1572,13 +1572,14 @@ def infer_null(value: Optional[Null]) -> Null:
1572
1572
1573
1573
1574
1574
if IS_SHAPELY_AVAILABLE :
1575
+
1575
1576
@infer .register (shapely .geometry .Point )
1576
1577
def infer_shapely_point (value : shapely .geometry .Point ) -> Point :
1577
1578
return point
1578
1579
1579
1580
@infer .register (shapely .geometry .LineString )
1580
1581
def infer_shapely_linestring (
1581
- value : shapely .geometry .LineString
1582
+ value : shapely .geometry .LineString ,
1582
1583
) -> LineString :
1583
1584
return linestring
1584
1585
@@ -1588,19 +1589,19 @@ def infer_shapely_polygon(value: shapely.geometry.Polygon) -> Polygon:
1588
1589
1589
1590
@infer .register (shapely .geometry .MultiLineString )
1590
1591
def infer_shapely_multilinestring (
1591
- value : shapely .geometry .MultiLineString
1592
+ value : shapely .geometry .MultiLineString ,
1592
1593
) -> MultiLineString :
1593
1594
return multilinestring
1594
1595
1595
1596
@infer .register (shapely .geometry .MultiPoint )
1596
1597
def infer_shapely_multipoint (
1597
- value : shapely .geometry .MultiPoint
1598
+ value : shapely .geometry .MultiPoint ,
1598
1599
) -> MultiPoint :
1599
1600
return multipoint
1600
1601
1601
1602
@infer .register (shapely .geometry .MultiPolygon )
1602
1603
def infer_shapely_multipolygon (
1603
- value : shapely .geometry .MultiPolygon
1604
+ value : shapely .geometry .MultiPolygon ,
1604
1605
) -> MultiPolygon :
1605
1606
return multipolygon
1606
1607
@@ -1721,7 +1722,12 @@ def can_cast_variadic(
1721
1722
# geo spatial data type
1722
1723
# cast between same type, used to cast from/to geometry and geography
1723
1724
GEO_TYPES = (
1724
- Point , LineString , Polygon , MultiLineString , MultiPoint , MultiPolygon
1725
+ Point ,
1726
+ LineString ,
1727
+ Polygon ,
1728
+ MultiLineString ,
1729
+ MultiPoint ,
1730
+ MultiPolygon ,
1725
1731
)
1726
1732
1727
1733
0 commit comments