Skip to content

Commit b07fdb1

Browse files
committed
Improved code [skip ci]
1 parent 26deadd commit b07fdb1

8 files changed

Lines changed: 14 additions & 8 deletions

File tree

pgvector/django/halfvec.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def db_type(self, connection: Any) -> str:
2525
return 'halfvec(%d)' % self.dimensions
2626

2727
def from_db_value(self, value: Any, expression: Any, connection: Any) -> list[float] | None:
28-
return None if value is None else HalfVector._from_db(value)
28+
return HalfVector._from_db(value)
2929

3030
def to_python(self, value: Any) -> list[float] | None:
3131
if value is None or isinstance(value, list):

pgvector/django/vector.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def db_type(self, connection: Any) -> str:
2525
return 'vector(%d)' % self.dimensions
2626

2727
def from_db_value(self, value: Any, expression: Any, connection: Any) -> list[float] | None:
28-
return None if value is None else Vector._from_db(value)
28+
return Vector._from_db(value)
2929

3030
def to_python(self, value: Any) -> list[float] | None:
3131
if value is None or isinstance(value, list):

pgvector/halfvec.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,10 @@ def _to_db_binary(cls, value: object) -> bytes | None:
9696
return value.to_binary()
9797

9898
@classmethod
99-
def _from_db(cls, value: str | HalfVector) -> list[float]:
99+
def _from_db(cls, value: str | HalfVector | None) -> list[float] | None:
100+
if value is None:
101+
return value
102+
100103
if isinstance(value, str):
101104
value = cls.from_text(value)
102105

pgvector/peewee/halfvec.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def db_value(self, value: object) -> str | None:
1717
return HalfVector._to_db(value)
1818

1919
def python_value(self, value: Any) -> list[float] | None:
20-
return None if value is None else HalfVector._from_db(value)
20+
return HalfVector._from_db(value)
2121

2222
def _distance(self, op: str, vector: object) -> Expression:
2323
return Expression(lhs=self, op=op, rhs=self.to_value(vector))

pgvector/peewee/vector.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def db_value(self, value: object) -> str | None:
1717
return Vector._to_db(value)
1818

1919
def python_value(self, value: Any) -> list[float] | None:
20-
return None if value is None else Vector._from_db(value)
20+
return Vector._from_db(value)
2121

2222
def _distance(self, op: str, vector: object) -> Expression:
2323
return Expression(lhs=self, op=op, rhs=self.to_value(vector))

pgvector/sqlalchemy/halfvec.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def process(value: Any) -> Any:
3232

3333
def result_processor(self, dialect: Dialect, coltype: Any) -> Any:
3434
def process(value: Any) -> list[float] | None:
35-
return None if value is None else HalfVector._from_db(value)
35+
return HalfVector._from_db(value)
3636
return process
3737

3838
class Comparator(TypeEngine.Comparator[Any]):

pgvector/sqlalchemy/vector.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def process(value: Any) -> Any:
3232

3333
def result_processor(self, dialect: Dialect, coltype: Any) -> Any:
3434
def process(value: Any) -> list[float] | None:
35-
return None if value is None else Vector._from_db(value)
35+
return Vector._from_db(value)
3636
return process
3737

3838
class Comparator(TypeEngine.Comparator[Any]):

pgvector/vector.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,10 @@ def _to_db_binary(cls, value: object) -> bytes | None:
9696
return value.to_binary()
9797

9898
@classmethod
99-
def _from_db(cls, value: str | Vector) -> list[float]:
99+
def _from_db(cls, value: str | Vector | None) -> list[float] | None:
100+
if value is None:
101+
return value
102+
100103
if isinstance(value, str):
101104
value = cls.from_text(value)
102105

0 commit comments

Comments
 (0)