Edit on GitHub

# sqlglot._typing

View Source

     1from __future__ import annotations
     2
     3import typing as t
     4
     5import sqlglot
     6
     7if t.TYPE_CHECKING:
     8    from typing_extensions import Literal as Lit  # noqa
     9
    10# A little hack for backwards compatibility with Python 3.7.
    11# For example, we might want a TypeVar for objects that support comparison e.g. SupportsRichComparisonT from typeshed.
    12# But Python 3.7 doesn't support Protocols, so we'd also need typing_extensions, which we don't want as a dependency.
    13A = t.TypeVar("A", bound=t.Any)
    14B = t.TypeVar("B", bound="sqlglot.exp.Binary")
    15E = t.TypeVar("E", bound="sqlglot.exp.Expression")
    16F = t.TypeVar("F", bound="sqlglot.exp.Func")
    17T = t.TypeVar("T")