Skip to main content

define_pyramid

Macro define_pyramid 

Source
macro_rules! define_pyramid {
    (
        $vis:vis const $name:ident = {
            $($status:ident => {
                $(requirements: [$( ($req_status:ident, $req_radius:expr) ),* $(,)?] ,)?
                $(block_state_write_radius: $bswr:expr ,)?
                task: $task:expr $(,)?
            }),* $(,)?
        };
    ) => { ... };
    (@bswr) => { ... };
    (@bswr $bswr:expr) => { ... };
}
Expand description

Macro for defining chunk pyramids with nice syntax.

§Example

define_pyramid! {
    pub static MY_PYRAMID = {
        Empty => { task: my_task },
        StructureStarts => {
            requirements: [(StructureStarts, 8)],
            task: other_task,
        },
    };
}