class CompileStateOption(HasCacheKey, ORMOption):
Known subclasses: sqlalchemy.orm.interfaces.CriteriaOption
, sqlalchemy.orm.interfaces.LoaderOption
base for .ORMOption
classes that affect the compilation of
a SQL query and therefore need to be part of the cache key.
Note
.CompileStateOption
is generally non-public and
should not be used as a base class for user-defined options; instead,
use .UserDefinedOption
, which is easier to use as it does not
interact with ORM compilation internals or caching.
.CompileStateOption
defines an internal attribute
_is_compile_state=True which has the effect of the ORM compilation
routines for SELECT and other statements will call upon these options when
a SQL string is being compiled. As such, these classes implement
.HasCacheKey
and need to provide robust _cache_key_traversal
structures.
The .CompileStateOption
class is used to implement the ORM
.LoaderOption
and .CriteriaOption
classes.
Method | process_compile_state |
Apply a modification to a given .CompileState . |
Method | process_compile_state_replaced_entities |
Apply a modification to a given .CompileState , given entities that were replaced by with_only_columns() or with_entities(). |
Class Variable | _is_compile_state |
Undocumented |
Inherited from HasCacheKey
:
Class Variable | inherit_cache |
Indicate if this .HasCacheKey instance should make use of the cache key generation scheme used by its immediate superclass. |
Class Method | _generate_cache_attrs |
generate cache key dispatcher for a new class. |
Class Method | _generate_cache_key_for_object |
Undocumented |
Method | _gen_cache_key |
return an optional cache key. |
Method | _generate_cache_key |
return a cache key. |
Class Variable | __slots__ |
Undocumented |
Class Variable | _hierarchy_supports_caching |
private attribute which may be set to False to prevent the inherit_cache warning from being emitted for a hierarchy of subclasses. |
Class Variable | _is_has_cache_key |
Undocumented |
Inherited from ORMOption
:
Class Variable | __slots__ |
Undocumented |
Class Variable | _is_criteria_option |
Undocumented |
Class Variable | _is_legacy_option |
Undocumented |
Class Variable | _is_strategy_option |
Undocumented |
Class Variable | propagate_to_loaders |
if True, indicate this option should be carried along to "secondary" SELECT statements that occur for relationship lazy loaders as well as attribute load / refresh operations. |
Inherited from ExecutableOption
(via ORMOption
):
Method | _clone |
Create a shallow copy of this ExecutableOption. |
Class Variable | __visit_name__ |
Undocumented |
Class Variable | _is_has_cache_key |
Undocumented |
Inherited from HasCopyInternals
(via ORMOption
, ExecutableOption
):
Method | _copy_internals |
Reassign internal elements to be clones of themselves. |
Apply a modification to a given .CompileState
,
given entities that were replaced by with_only_columns() or
with_entities().