pub trait IndexBuilder: QuotedBuilder + TableRefBuilder {
// Required methods
fn prepare_index_create_statement(
&self,
create: &IndexCreateStatement,
sql: &mut impl SqlWriter,
);
fn prepare_table_ref_index_stmt(
&self,
table_ref: &TableRef,
sql: &mut impl SqlWriter,
);
fn prepare_index_drop_statement(
&self,
drop: &IndexDropStatement,
sql: &mut impl SqlWriter,
);
// Provided method
fn prepare_table_index_expression(
&self,
create: &IndexCreateStatement,
sql: &mut impl SqlWriter,
) { ... }
}Required Methods§
Sourcefn prepare_index_create_statement(
&self,
create: &IndexCreateStatement,
sql: &mut impl SqlWriter,
)
fn prepare_index_create_statement( &self, create: &IndexCreateStatement, sql: &mut impl SqlWriter, )
Translate IndexCreateStatement into SQL statement.
Sourcefn prepare_table_ref_index_stmt(
&self,
table_ref: &TableRef,
sql: &mut impl SqlWriter,
)
fn prepare_table_ref_index_stmt( &self, table_ref: &TableRef, sql: &mut impl SqlWriter, )
Translate TableRef into SQL statement.
Sourcefn prepare_index_drop_statement(
&self,
drop: &IndexDropStatement,
sql: &mut impl SqlWriter,
)
fn prepare_index_drop_statement( &self, drop: &IndexDropStatement, sql: &mut impl SqlWriter, )
Translate IndexDropStatement into SQL statement.
Provided Methods§
Sourcefn prepare_table_index_expression(
&self,
create: &IndexCreateStatement,
sql: &mut impl SqlWriter,
)
fn prepare_table_index_expression( &self, create: &IndexCreateStatement, sql: &mut impl SqlWriter, )
Translate IndexCreateStatement into SQL expression.
This is the default implementation for PostgresQueryBuilder and SqliteQueryBuilder.
MysqlQueryBuilder overrides this default implementation.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementors§
impl IndexBuilder for MysqlQueryBuilder
Available on crate feature
backend-mysql only.impl IndexBuilder for PostgresQueryBuilder
Available on crate feature
backend-postgres only.impl IndexBuilder for SqliteQueryBuilder
Available on crate feature
backend-sqlite only.