Skip to main content

Iden

Trait Iden 

Source
pub trait Iden {
    // Required method
    fn unquoted(&self) -> &str;

    // Provided methods
    fn quoted(&self) -> Cow<'static, str> { ... }
    fn to_string(&self) -> String { ... }
}
Expand description

Identifier

Required Methods§

Source

fn unquoted(&self) -> &str

Write a raw identifier string without quotes.

We intentionally don’t reuse Display for this, because we want to allow it to have a different logic.

Provided Methods§

Source

fn quoted(&self) -> Cow<'static, str>

Return the to-be sanitized version of the identifier.

For example, for MySQL “hello” would have to be escaped as “hel``lo”. Note that this method doesn’t do the actual escape, as it’s backend specific. It only indicates whether the identifier needs to be escaped.

If the identifier doesn’t need to be escaped, return 'static str. This can be deduced at compile-time by the Iden macro, or using the is_static_iden function.

Cow::Owned would always be escaped.

Source

fn to_string(&self) -> String

A shortcut for writing an unquoted identifier into a String.

We can’t reuse ToString for this, because ToString uses the Display representation. But Iden representation is distinct from Display and can be different.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl Iden for &'static str

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for CharacterSetFields

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for CheckConstraintsFields

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for Column

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for ColumnsField

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for Entity

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for Has

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for InformationSchema

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for KeyColumnUsageFields

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgAttribute

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgCatalog

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgClass

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgEnum

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgIndex

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgIndexes

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgNamespace

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PgType

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for PrimaryKey

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for ReferentialConstraintsFields

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for SqliteMaster

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for SqliteSchema

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for TableConstraintsField

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for TableType

Source§

fn unquoted(&self) -> &str

Source§

impl Iden for TablesFields

Source§

fn quoted(&self) -> Cow<'static, str>

Source§

fn unquoted(&self) -> &str

Implementors§

Source§

impl Iden for Alias

Source§

impl Iden for AuthTokenIden

Source§

impl Iden for CrateAuthorIden

Source§

impl Iden for CrateAuthorToCrateIden

Source§

impl Iden for CrateCategory

Source§

impl Iden for CrateCategoryToCrateIden

Source§

impl Iden for CrateGroupIden

Source§

impl Iden for CrateIden

Source§

impl Iden for CrateIndexIden

Source§

impl Iden for CrateKeywordIden

Source§

impl Iden for CrateKeywordToCrateIden

Source§

impl Iden for CrateMetaIden

Source§

impl Iden for CrateUserIden

Source§

impl Iden for CratesIoIden

Source§

impl Iden for CratesIoIndexIden

Source§

impl Iden for CratesIoMetaIden

Source§

impl Iden for DocQueueIden

Source§

impl Iden for GroupIden

Source§

impl Iden for GroupUserIden

Source§

impl Iden for Identity

Source§

impl Iden for MySqlType

Source§

impl Iden for NullAlias

Source§

impl Iden for OAuth2IdentityIden

Source§

impl Iden for OAuth2StateIden

Source§

impl Iden for OwnerIden

Source§

impl Iden for PgLTree

Source§

impl Iden for SelectA

Source§

impl Iden for SelectB

Source§

impl Iden for SelectC

Source§

impl Iden for SessionIden

Source§

impl Iden for ToolchainComponentIden

Source§

impl Iden for ToolchainIden

Source§

impl Iden for ToolchainTargetIden

Source§

impl Iden for UserIden

Source§

impl<E> Iden for BoolColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for BytesColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for DateLikeColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for DateTimeLikeColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for GenericArrayColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for IpNetworkColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for JsonColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for NumericArrayColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for NumericColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for NumericColumnNullable<E>
where E: EntityTrait,

Source§

impl<E> Iden for StringColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for StringColumnNullable<E>
where E: EntityTrait,

Source§

impl<E> Iden for TextUuidColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for TimeLikeColumn<E>
where E: EntityTrait,

Source§

impl<E> Iden for UuidColumn<E>
where E: EntityTrait,