comfy-builder-macros 0.0.7

A system for building custom nodes for ComfyUI in Rust.
Documentation
use proc_macro::TokenStream;

mod helpers;
mod macros;

#[proc_macro_attribute]
pub fn node(arguments: TokenStream, input: TokenStream) -> TokenStream {
    macros::node::node(arguments, input)
}

#[proc_macro_derive(NodeOutput, attributes(label, display_name, tooltip))]
pub fn node_output_derive(input: TokenStream) -> TokenStream {
    macros::output::node_output_derive(input)
}

#[proc_macro_derive(
    NodeInput,
    attributes(
        attribute,
        default,
        display_name,
        display_mode,
        tooltip,
        placeholder,
        min,
        max,
        label_on,
        label_off,
        multiline,
        control_after_generate
    )
)]
pub fn node_input_derive(input: TokenStream) -> TokenStream {
    macros::input::node_input_derive(input)
}

#[proc_macro_derive(Enum, attributes(display_name))]
pub fn enum_derive(input: TokenStream) -> TokenStream {
    macros::r#enum::enum_derive(input)
}

#[proc_macro]
pub fn boostrap(input: TokenStream) -> TokenStream {
    macros::boostrap::boostrap(input)
}