__init__.py 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. # sql/__init__.py
  2. # Copyright (C) 2005-2025 the SQLAlchemy authors and contributors
  3. # <see AUTHORS file>
  4. #
  5. # This module is part of SQLAlchemy and is released under
  6. # the MIT License: https://www.opensource.org/licenses/mit-license.php
  7. from typing import Any
  8. from typing import TYPE_CHECKING
  9. from ._typing import ColumnExpressionArgument as ColumnExpressionArgument
  10. from ._typing import NotNullable as NotNullable
  11. from ._typing import Nullable as Nullable
  12. from .base import Executable as Executable
  13. from .compiler import COLLECT_CARTESIAN_PRODUCTS as COLLECT_CARTESIAN_PRODUCTS
  14. from .compiler import FROM_LINTING as FROM_LINTING
  15. from .compiler import NO_LINTING as NO_LINTING
  16. from .compiler import WARN_LINTING as WARN_LINTING
  17. from .ddl import BaseDDLElement as BaseDDLElement
  18. from .ddl import DDL as DDL
  19. from .ddl import DDLElement as DDLElement
  20. from .ddl import ExecutableDDLElement as ExecutableDDLElement
  21. from .expression import Alias as Alias
  22. from .expression import alias as alias
  23. from .expression import all_ as all_
  24. from .expression import and_ as and_
  25. from .expression import any_ as any_
  26. from .expression import asc as asc
  27. from .expression import between as between
  28. from .expression import bindparam as bindparam
  29. from .expression import case as case
  30. from .expression import cast as cast
  31. from .expression import ClauseElement as ClauseElement
  32. from .expression import collate as collate
  33. from .expression import column as column
  34. from .expression import ColumnCollection as ColumnCollection
  35. from .expression import ColumnElement as ColumnElement
  36. from .expression import CompoundSelect as CompoundSelect
  37. from .expression import cte as cte
  38. from .expression import Delete as Delete
  39. from .expression import delete as delete
  40. from .expression import desc as desc
  41. from .expression import distinct as distinct
  42. from .expression import except_ as except_
  43. from .expression import except_all as except_all
  44. from .expression import exists as exists
  45. from .expression import extract as extract
  46. from .expression import false as false
  47. from .expression import False_ as False_
  48. from .expression import FromClause as FromClause
  49. from .expression import func as func
  50. from .expression import funcfilter as funcfilter
  51. from .expression import Insert as Insert
  52. from .expression import insert as insert
  53. from .expression import intersect as intersect
  54. from .expression import intersect_all as intersect_all
  55. from .expression import Join as Join
  56. from .expression import join as join
  57. from .expression import label as label
  58. from .expression import LABEL_STYLE_DEFAULT as LABEL_STYLE_DEFAULT
  59. from .expression import (
  60. LABEL_STYLE_DISAMBIGUATE_ONLY as LABEL_STYLE_DISAMBIGUATE_ONLY,
  61. )
  62. from .expression import LABEL_STYLE_NONE as LABEL_STYLE_NONE
  63. from .expression import (
  64. LABEL_STYLE_TABLENAME_PLUS_COL as LABEL_STYLE_TABLENAME_PLUS_COL,
  65. )
  66. from .expression import lambda_stmt as lambda_stmt
  67. from .expression import LambdaElement as LambdaElement
  68. from .expression import lateral as lateral
  69. from .expression import literal as literal
  70. from .expression import literal_column as literal_column
  71. from .expression import modifier as modifier
  72. from .expression import not_ as not_
  73. from .expression import null as null
  74. from .expression import nulls_first as nulls_first
  75. from .expression import nulls_last as nulls_last
  76. from .expression import nullsfirst as nullsfirst
  77. from .expression import nullslast as nullslast
  78. from .expression import or_ as or_
  79. from .expression import outerjoin as outerjoin
  80. from .expression import outparam as outparam
  81. from .expression import over as over
  82. from .expression import quoted_name as quoted_name
  83. from .expression import Select as Select
  84. from .expression import select as select
  85. from .expression import Selectable as Selectable
  86. from .expression import SelectLabelStyle as SelectLabelStyle
  87. from .expression import SQLColumnExpression as SQLColumnExpression
  88. from .expression import StatementLambdaElement as StatementLambdaElement
  89. from .expression import Subquery as Subquery
  90. from .expression import table as table
  91. from .expression import TableClause as TableClause
  92. from .expression import TableSample as TableSample
  93. from .expression import tablesample as tablesample
  94. from .expression import text as text
  95. from .expression import true as true
  96. from .expression import True_ as True_
  97. from .expression import try_cast as try_cast
  98. from .expression import tuple_ as tuple_
  99. from .expression import type_coerce as type_coerce
  100. from .expression import union as union
  101. from .expression import union_all as union_all
  102. from .expression import Update as Update
  103. from .expression import update as update
  104. from .expression import Values as Values
  105. from .expression import values as values
  106. from .expression import within_group as within_group
  107. from .visitors import ClauseVisitor as ClauseVisitor
  108. def __go(lcls: Any) -> None:
  109. from .. import util as _sa_util
  110. from . import base
  111. from . import coercions
  112. from . import elements
  113. from . import lambdas
  114. from . import selectable
  115. from . import schema
  116. from . import traversals
  117. from . import type_api
  118. if not TYPE_CHECKING:
  119. base.coercions = elements.coercions = coercions
  120. base.elements = elements
  121. base.type_api = type_api
  122. coercions.elements = elements
  123. coercions.lambdas = lambdas
  124. coercions.schema = schema
  125. coercions.selectable = selectable
  126. from .annotation import _prepare_annotations
  127. from .annotation import Annotated
  128. from .elements import AnnotatedColumnElement
  129. from .elements import ClauseList
  130. from .selectable import AnnotatedFromClause
  131. _prepare_annotations(ColumnElement, AnnotatedColumnElement)
  132. _prepare_annotations(FromClause, AnnotatedFromClause)
  133. _prepare_annotations(ClauseList, Annotated)
  134. _sa_util.preloaded.import_prefix("sqlalchemy.sql")
  135. __go(locals())