Macro schemer::migration
[−]
[src]
macro_rules! migration { ($name:ident, $id:expr, [ $( $dependency_id:expr ),* $(,)* ], $description:expr) => { ... }; }
Create a trivial implementation of Migration
for a type.
Example
#[macro_use] extern crate schemer; extern crate uuid; use schemer::Migration; struct ParentMigration; migration!( ParentMigration, "bc960dc8-0e4a-4182-a62a-8e776d1e2b30", [], "Parent migration in a DAG"); struct ChildMigration; migration!( ChildMigration, "4885e8ab-dafa-4d76-a565-2dee8b04ef60", ["bc960dc8-0e4a-4182-a62a-8e776d1e2b30",], "Child migration in a DAG"); fn main() { let parent = ParentMigration; let child = ChildMigration; assert!(child.dependencies().contains(&parent.id())); }