pub struct FsMigration { /* private fields */ }
Expand description

A migration stored in the filesystem

Implementations§

source§

impl FsMigration

source

pub fn copy_to(&self, other: &mut Self) -> Result<()>

Trait Implementations§

source§

impl Debug for FsMigration

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Migration for FsMigration

source§

fn db(&self) -> Result<ADB>

Retrieves the full abstract database state describing all tables
source§

fn migration_from(&self) -> Result<Option<Cow<'_, str>>>

Get the name of the migration before this one (if any).
source§

fn name(&self) -> Cow<'_, str>

The name of this migration.
source§

fn up_sql(&self, backend_name: &str) -> Result<Option<String>>

The backend-specific commands to apply this migration.
source§

fn down_sql(&self, backend_name: &str) -> Result<Option<String>>

The backend-specific commands to undo this migration.
source§

fn sql_backends(&self) -> Result<Vec<String>>

The names of the backends this migration has sql for.
source§

fn apply(&self, conn: &mut impl BackendConnection) -> Result<()>

Apply the migration to a database connection. The connection must be for the same type of database as this and the database must be in the state of the migration prior to this one
source§

fn mark_applied(&self, conn: &impl ConnectionMethods) -> Result<()>

Mark the migration as being applied without doing any work. Use carefully – the caller must ensure that the database schema already matches that expected by this migration.
source§

fn downgrade(&self, conn: &mut impl BackendConnection) -> Result<()>

Un-apply (downgrade) the migration to a database connection. The connection must be for the same type of database as this and this must be the latest migration applied to the database.
source§

impl MigrationMut for FsMigration

source§

fn set_migration_from(&mut self, prev: Option<String>) -> Result<()>

Set the migration before this one.

source§

fn write_table(&mut self, table: &ATable) -> Result<()>

Adds an abstract table to the migration. The table state should represent the expected state after the migration has been applied. It is expected that all tables will be added to the migration in this fashion.
source§

fn delete_table(&mut self, table: &str) -> Result<()>

Delete the table with the given name. Note that simply deleting a table in code does not work – it will remain with its last known schema unless explicitly deleted. See also the butane cli command butane delete table <TABLE>.
source§

fn add_sql( &mut self, backend_name: &str, up_sql: &str, down_sql: &str ) -> Result<()>

Set the backend-specific commands to apply/undo this migration.
source§

fn add_type(&mut self, key: TypeKey, sqltype: DeferredSqlType) -> Result<()>

Adds a TypeKey -> SqlType mapping. Only meaningful on the special current migration.
source§

impl PartialEq<FsMigration> for FsMigration

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for FsMigration

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.