You want to use a macro for this so you can do hot-reloading - doing it with native Rust is currently impractical for rapid dev.