From d38d35a818e8f5aa7755ad0e25739ff4daf259e1 Mon Sep 17 00:00:00 2001 From: Nick Crews Date: Wed, 23 Apr 2025 10:18:13 -0700 Subject: [PATCH] refactor(datatypes): fully remove unused DataType.name --- ibis/backends/sql/compilers/impala.py | 2 +- ibis/backends/sql/datatypes.py | 2 +- ibis/expr/datatypes/core.py | 12 ++++-------- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/ibis/backends/sql/compilers/impala.py b/ibis/backends/sql/compilers/impala.py index 8159e48ccf95..da294d485cfe 100644 --- a/ibis/backends/sql/compilers/impala.py +++ b/ibis/backends/sql/compilers/impala.py @@ -173,7 +173,7 @@ def visit_NonNullLiteral(self, op, *, value, dtype): ) elif dtype.is_array() or dtype.is_map() or dtype.is_struct(): raise com.UnsupportedBackendType( - f"Impala does not support {dtype.name.lower()} literals" + f"Impala does not support {dtype.__class__.__name__.lower()} literals" ) elif dtype.is_uuid(): return sge.convert(str(value)) diff --git a/ibis/backends/sql/datatypes.py b/ibis/backends/sql/datatypes.py index 2c206912408a..32bdb6cd7ede 100644 --- a/ibis/backends/sql/datatypes.py +++ b/ibis/backends/sql/datatypes.py @@ -173,7 +173,7 @@ def to_ibis(cls, typ: sge.DataType, nullable: bool | None = None) -> dt.DataType def from_ibis(cls, dtype: dt.DataType) -> sge.DataType: """Convert an Ibis dtype to an sqlglot dtype.""" - if method := getattr(cls, f"_from_ibis_{dtype.name}", None): + if method := getattr(cls, f"_from_ibis_{dtype.__class__.__name__}", None): return method(dtype) else: return sge.DataType(this=_to_sqlglot_types[type(dtype)]) diff --git a/ibis/expr/datatypes/core.py b/ibis/expr/datatypes/core.py index 06466473e811..63716e863bb8 100644 --- a/ibis/expr/datatypes/core.py +++ b/ibis/expr/datatypes/core.py @@ -189,12 +189,6 @@ def column(self): ... def _pretty_piece(self) -> str: return "" - # TODO(kszucs): should remove it, only used internally - @property - def name(self) -> str: - """Return the name of the data type.""" - return self.__class__.__name__ - @classmethod def __coerce__(cls, value, **kwargs): if isinstance(value, cls): @@ -209,7 +203,8 @@ def __call__(self, **kwargs): def __str__(self) -> str: prefix = "!" * (not self.nullable) - return f"{prefix}{self.name.lower()}{self._pretty_piece}" + name = self.__class__.__name__.lower() + return f"{prefix}{name}{self._pretty_piece}" def equals(self, other: DataType) -> bool: if not isinstance(other, DataType): @@ -962,7 +957,8 @@ def __getitem__(self, key: str) -> DataType: return self.fields[key] def __repr__(self) -> str: - return f"'{self.name}({list(self.items())}, nullable={self.nullable})" + name = self.__class__.__name__ + return f"'{name}({list(self.items())}, nullable={self.nullable})" @property def _pretty_piece(self) -> str: