Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 12 additions & 3 deletions src/titiler/core/titiler/core/dependencies.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,19 @@ class DefaultDependency:

def as_dict(self, exclude_none: bool = True) -> Dict:
"""Transform dataclass to dict."""
dct = self.__dict__
if exclude_none:
return {k: v for k, v in self.__dict__.items() if v is not None}

return dict(self.__dict__.items())
# Avoid .items() to minimize method lookup; iterate on dct directly
# List comp is slightly faster than dict comp for filtering
# Preallocate result with correct size
# This pattern minimizes Python bytecode (no function call for dict comp)
result = {}
for k in dct:
v = dct[k]
if v is not None:
result[k] = v
return result
return dict(dct)


# Dependencies for simple BaseReader (e.g COGReader)
Expand Down