pub type TableColumnWalker<'a> = Walker<'a, TableColumnId>;
Expand description

Traverse a table column.

Aliased Type§

struct TableColumnWalker<'a> {
    pub id: TableColumnId,
    pub schema: &'a SqlSchema,
}

Fields§

§id: TableColumnId

The identifier.

§schema: &'a SqlSchema

The schema for which the identifier is valid.

Implementations§

source§

impl<'a> TableColumnWalker<'a>

source

pub fn coarsen(self) -> ColumnWalker<'a>

Coarsen the walker into a generic column version.

source

pub fn name(self) -> &'a str

The column name.

source

pub fn arity(self) -> ColumnArity

The nullability and arity of the column.

source

pub fn column_has_enum_default_value(self, enum_name: &str, value: &str) -> bool

Returns whether the column has the enum default value of the given enum type.

source

pub fn column_type_is_enum(self, enum_name: &str) -> bool

Returns whether the type of the column matches the provided enum name.

source

pub fn column_type_family(self) -> &'a ColumnTypeFamily

The type family.

source

pub fn column_type_family_as_enum(self) -> Option<EnumWalker<'a>>

Extract an Enum column type family, or None if the family is something else.

source

pub fn default(self) -> Option<TableDefaultValueWalker<'a>>

the default value for the column.

source

pub fn column_type(self) -> &'a ColumnType

The full column type.

source

pub fn column_native_type<T: Any + 'static>(self) -> Option<&'a T>

The column native type.

source

pub fn is_autoincrement(self) -> bool

Is this column an auto-incrementing integer?

source

pub fn is_same_column(self, other: TableColumnWalker<'_>) -> bool

Returns whether two columns are named the same and belong to the same table.

source

pub fn is_part_of_secondary_index(self) -> bool

Is this column indexed by a secondary index??

source

pub fn is_part_of_primary_key(self) -> bool

Is this column a part of the table’s primary key?

source

pub fn is_part_of_foreign_key(self) -> bool

Is this column a part of one of the table’s foreign keys?

source

pub fn is_single_primary_key(self) -> bool

Returns whether this column is the primary key. If it is only part of the primary key, this will return false.

source

pub fn table(self) -> TableWalker<'a>

Traverse to the column’s table.