1use proc_macro::TokenStream;
2
3fn is_injected_type(ty: &syn::Type) -> bool {
4 match ty {
5 syn::Type::Path(ty) => {
6 let path = &ty.path;
7 if let Some(segment) = path.segments.last() {
8 segment.ident == "Inject"
9 } else {
10 false
11 }
12 }
13 _ => false,
14 }
15}
16
17mod prompt;
18mod tool;
19
20#[proc_macro_attribute]
21pub fn prompt(args: TokenStream, input: TokenStream) -> TokenStream {
22 prompt::prompt(args, input)
23}
24
25#[proc_macro_attribute]
26pub fn tool(args: TokenStream, input: TokenStream) -> TokenStream {
27 tool::tool(args, input)
28}