diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2022-03-17 16:18:55 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2022-03-19 23:15:15 -0400 |
| commit | 6c3d738757d7be32dc9f99d8e1c6b5c81c596d5f (patch) | |
| tree | ae142d45de71d1ebd43df1a38e54e1d3cf1063ec /lib/sqlalchemy/dialects | |
| parent | c2fe4a264003933ff895c51f5d07a8456ac86382 (diff) | |
| download | sqlalchemy-6c3d738757d7be32dc9f99d8e1c6b5c81c596d5f.tar.gz | |
pep 484 for types
strict types type_api.py, including TypeDecorator,
NativeForEmulated, etc.
Change-Id: Ib2eba26de0981324a83733954cb7044a29bbd7db
Diffstat (limited to 'lib/sqlalchemy/dialects')
| -rw-r--r-- | lib/sqlalchemy/dialects/mssql/base.py | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/mysql/base.py | 16 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/oracle/base.py | 5 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/postgresql/base.py | 11 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/sqlite/base.py | 4 |
5 files changed, 18 insertions, 22 deletions
diff --git a/lib/sqlalchemy/dialects/mssql/base.py b/lib/sqlalchemy/dialects/mssql/base.py index dd792f70d..07ff495a7 100644 --- a/lib/sqlalchemy/dialects/mssql/base.py +++ b/lib/sqlalchemy/dialects/mssql/base.py @@ -2311,7 +2311,7 @@ class MSDDLCompiler(compiler.DDLCompiler): if column.computed is not None: colspec += " " + self.process(column.computed) else: - colspec += " " + self.dialect.type_compiler.process( + colspec += " " + self.dialect.type_compiler_instance.process( column.type, type_expression=column ) @@ -2719,7 +2719,7 @@ class MSDialect(default.DefaultDialect): statement_compiler = MSSQLCompiler ddl_compiler = MSDDLCompiler - type_compiler = MSTypeCompiler + type_compiler_cls = MSTypeCompiler preparer = MSIdentifierPreparer construct_arguments = [ diff --git a/lib/sqlalchemy/dialects/mysql/base.py b/lib/sqlalchemy/dialects/mysql/base.py index b2ccfc90f..cfdc3deb2 100644 --- a/lib/sqlalchemy/dialects/mysql/base.py +++ b/lib/sqlalchemy/dialects/mysql/base.py @@ -1414,25 +1414,25 @@ class MySQLCompiler(compiler.SQLCompiler): sqltypes.Time, ), ): - return self.dialect.type_compiler.process(type_) + return self.dialect.type_compiler_instance.process(type_) elif isinstance(type_, sqltypes.String) and not isinstance( type_, (ENUM, SET) ): adapted = CHAR._adapt_string_for_cast(type_) - return self.dialect.type_compiler.process(adapted) + return self.dialect.type_compiler_instance.process(adapted) elif isinstance(type_, sqltypes._Binary): return "BINARY" elif isinstance(type_, sqltypes.JSON): return "JSON" elif isinstance(type_, sqltypes.NUMERIC): - return self.dialect.type_compiler.process(type_).replace( + return self.dialect.type_compiler_instance.process(type_).replace( "NUMERIC", "DECIMAL" ) elif ( isinstance(type_, sqltypes.Float) and self.dialect._support_float_cast ): - return self.dialect.type_compiler.process(type_) + return self.dialect.type_compiler_instance.process(type_) else: return None @@ -1442,7 +1442,9 @@ class MySQLCompiler(compiler.SQLCompiler): util.warn( "Datatype %s does not support CAST on MySQL/MariaDb; " "the CAST will be skipped." - % self.dialect.type_compiler.process(cast.typeclause.type) + % self.dialect.type_compiler_instance.process( + cast.typeclause.type + ) ) return self.process(cast.clause.self_group(), **kw) @@ -1699,7 +1701,7 @@ class MySQLDDLCompiler(compiler.DDLCompiler): colspec = [ self.preparer.format_column(column), - self.dialect.type_compiler.process( + self.dialect.type_compiler_instance.process( column.type, type_expression=column ), ] @@ -2358,7 +2360,7 @@ class MySQLDialect(default.DefaultDialect): statement_compiler = MySQLCompiler ddl_compiler = MySQLDDLCompiler - type_compiler = MySQLTypeCompiler + type_compiler_cls = MySQLTypeCompiler ischema_names = ischema_names preparer = MySQLIdentifierPreparer diff --git a/lib/sqlalchemy/dialects/oracle/base.py b/lib/sqlalchemy/dialects/oracle/base.py index 1ae58b8f4..3ee38c0cf 100644 --- a/lib/sqlalchemy/dialects/oracle/base.py +++ b/lib/sqlalchemy/dialects/oracle/base.py @@ -743,9 +743,6 @@ class INTERVAL(sqltypes.NativeForEmulated, sqltypes._AbstractInterval): day_precision=self.day_precision, ) - def coerce_compared_value(self, op, value): - return self - class ROWID(sqltypes.TypeEngine): """Oracle ROWID type. @@ -1537,7 +1534,7 @@ class OracleDialect(default.DefaultDialect): statement_compiler = OracleCompiler ddl_compiler = OracleDDLCompiler - type_compiler = OracleTypeCompiler + type_compiler_cls = OracleTypeCompiler preparer = OracleIdentifierPreparer execution_ctx_cls = OracleExecutionContext diff --git a/lib/sqlalchemy/dialects/postgresql/base.py b/lib/sqlalchemy/dialects/postgresql/base.py index e265cd0f7..a1401ea03 100644 --- a/lib/sqlalchemy/dialects/postgresql/base.py +++ b/lib/sqlalchemy/dialects/postgresql/base.py @@ -1712,9 +1712,6 @@ class INTERVAL(sqltypes.NativeForEmulated, sqltypes._AbstractInterval): def python_type(self): return dt.timedelta - def coerce_compared_value(self, op, value): - return self - PGInterval = INTERVAL @@ -2168,7 +2165,7 @@ ischema_names = { class PGCompiler(compiler.SQLCompiler): def render_bind_cast(self, type_, dbapi_type, sqltext): return f"""{sqltext}::{ - self.dialect.type_compiler.process( + self.dialect.type_compiler_instance.process( dbapi_type, identifier_preparer=self.preparer ) }""" @@ -2318,7 +2315,7 @@ class PGCompiler(compiler.SQLCompiler): return "SELECT %s WHERE 1!=1" % ( ", ".join( "CAST(NULL AS %s)" - % self.dialect.type_compiler.process( + % self.dialect.type_compiler_instance.process( INTEGER() if type_._isnull else type_ ) for type_ in element_types or [INTEGER()] @@ -2604,7 +2601,7 @@ class PGDDLCompiler(compiler.DDLCompiler): else: colspec += " SERIAL" else: - colspec += " " + self.dialect.type_compiler.process( + colspec += " " + self.dialect.type_compiler_instance.process( column.type, type_expression=column, identifier_preparer=self.preparer, @@ -3225,7 +3222,7 @@ class PGDialect(default.DefaultDialect): statement_compiler = PGCompiler ddl_compiler = PGDDLCompiler - type_compiler = PGTypeCompiler + type_compiler_cls = PGTypeCompiler preparer = PGIdentifierPreparer execution_ctx_cls = PGExecutionContext inspector = PGInspector diff --git a/lib/sqlalchemy/dialects/sqlite/base.py b/lib/sqlalchemy/dialects/sqlite/base.py index 79068c75f..03f35d5e2 100644 --- a/lib/sqlalchemy/dialects/sqlite/base.py +++ b/lib/sqlalchemy/dialects/sqlite/base.py @@ -1426,7 +1426,7 @@ class SQLiteCompiler(compiler.SQLCompiler): class SQLiteDDLCompiler(compiler.DDLCompiler): def get_column_specification(self, column, **kwargs): - coltype = self.dialect.type_compiler.process( + coltype = self.dialect.type_compiler_instance.process( column.type, type_expression=column ) colspec = self.preparer.format_column(column) + " " + coltype @@ -1815,7 +1815,7 @@ class SQLiteDialect(default.DefaultDialect): execution_ctx_cls = SQLiteExecutionContext statement_compiler = SQLiteCompiler ddl_compiler = SQLiteDDLCompiler - type_compiler = SQLiteTypeCompiler + type_compiler_cls = SQLiteTypeCompiler preparer = SQLiteIdentifierPreparer ischema_names = ischema_names colspecs = colspecs |
