fix(tvix/eval): VM & Builtin* types have to be public
... without them, using the new Builtins API is basically impossible for library consumers. Change-Id: Ice0557a2e55e12d812f51bf5a99e6b8c91ad1b91 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7755 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: flokli <flokli@flokli.de> Tested-by: BuildkiteCI
This commit is contained in:
parent
5634172a7f
commit
88432235ae
2 changed files with 6 additions and 13 deletions
|
|
@ -167,7 +167,7 @@ pub fn builtins(_args: TokenStream, item: TokenStream) -> TokenStream {
|
|||
};
|
||||
|
||||
Ok(quote_spanned!(arg.span() => {
|
||||
crate::internal::BuiltinArgument {
|
||||
crate::BuiltinArgument {
|
||||
strict: #strict,
|
||||
name: #name,
|
||||
}
|
||||
|
|
@ -194,11 +194,11 @@ pub fn builtins(_args: TokenStream, item: TokenStream) -> TokenStream {
|
|||
};
|
||||
|
||||
builtins.push(quote_spanned! { builtin_attr.span() => {
|
||||
crate::internal::Builtin::new(
|
||||
crate::Builtin::new(
|
||||
#name,
|
||||
&[#(#builtin_arguments),*],
|
||||
#docstring,
|
||||
|mut args: Vec<crate::Value>, vm: &mut crate::internal::VM| {
|
||||
|mut args: Vec<crate::Value>, vm: &mut crate::VM| {
|
||||
#(let #reversed_args = args.pop().unwrap();)*
|
||||
#fn_name(vm, #(#args),*)
|
||||
}
|
||||
|
|
@ -209,7 +209,7 @@ pub fn builtins(_args: TokenStream, item: TokenStream) -> TokenStream {
|
|||
}
|
||||
|
||||
items.push(parse_quote! {
|
||||
pub fn builtins() -> Vec<crate::internal::Builtin> {
|
||||
pub fn builtins() -> Vec<crate::Builtin> {
|
||||
vec![#(#builtins),*]
|
||||
}
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue