protospec-build 0.3.0

One binary format language to rule them all, One binary format language to find them, One binary format language to bring them all and in the darkness bind them.
Documentation
use crate::Span;
use serde::{Deserialize, Serialize};
use std::fmt;

pub trait Node {
    fn span(&self) -> &Span;
}

macro_rules! impl_node {
    ($name:ident) => {
        impl Node for $name {
            fn span(&self) -> &Span {
                &self.span
            }
        }
    };
}

mod program;
pub use program::*;

mod declaration;
pub use declaration::*;

mod types;
pub use types::*;

mod transform;
pub use transform::*;

mod field;
pub use field::*;

mod expression;
pub use expression::*;