solverforge-macros 0.15.0

Derive macros for SolverForge constraint solver
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
mod ast;
mod emit;
mod parse;
mod plan;

#[cfg(test)]
mod tests;

use proc_macro2::TokenStream;
use syn::ItemFn;

pub(crate) fn expand(input: ItemFn) -> syn::Result<TokenStream> {
    let parsed = parse::parse_constraint_function(input)?;
    let planned = plan::plan(parsed);
    emit::emit(planned)
}