Skip to content

Commit 7a54759

Browse files
committed
Add date/time type support in Python SDK.
1 parent 3a7ad4d commit 7a54759

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

python/cocoindex/typing.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import typing
22
import collections
33
import dataclasses
4+
import datetime
45
import types
56
import inspect
67
import uuid
@@ -26,6 +27,8 @@ def __init__(self, key: str, value: Any):
2627
Float64 = Annotated[float, TypeKind('Float64')]
2728
Range = Annotated[tuple[int, int], TypeKind('Range')]
2829
Json = Annotated[Any, TypeKind('Json')]
30+
LocalDateTime = Annotated[datetime.datetime, TypeKind('LocalDateTime')]
31+
OffsetDateTime = Annotated[datetime.datetime, TypeKind('OffsetDateTime')]
2932

3033
COLLECTION_TYPES = ('Table', 'List')
3134

@@ -133,6 +136,12 @@ def analyze_type_info(t) -> AnalyzedTypeInfo:
133136
kind = 'Float64'
134137
elif t is uuid.UUID:
135138
kind = 'Uuid'
139+
elif t is datetime.date:
140+
kind = 'Date'
141+
elif t is datetime.time:
142+
kind = 'Time'
143+
elif t is datetime.datetime:
144+
kind = 'OffsetDateTime'
136145
else:
137146
raise ValueError(f"type unsupported yet: {t}")
138147

0 commit comments

Comments
 (0)