first passing build with shareable
This commit is contained in:
parent
b537f0f048
commit
66271a54bd
|
@ -151,6 +151,8 @@ pub struct SimpleObjectField {
|
|||
#[darling(default)]
|
||||
pub requires: Option<String>,
|
||||
#[darling(default)]
|
||||
pub shareable: bool,
|
||||
#[darling(default)]
|
||||
pub guard: Option<SpannedValue<String>>,
|
||||
#[darling(default)]
|
||||
pub visible: Option<Visible>,
|
||||
|
@ -278,6 +280,7 @@ pub struct ObjectField {
|
|||
pub external: bool,
|
||||
pub provides: Option<String>,
|
||||
pub requires: Option<String>,
|
||||
pub shareable: bool,
|
||||
pub guard: Option<SpannedValue<String>>,
|
||||
pub visible: Option<Visible>,
|
||||
pub complexity: Option<ComplexityType>,
|
||||
|
@ -491,6 +494,8 @@ pub struct InterfaceField {
|
|||
pub requires: Option<String>,
|
||||
#[darling(default)]
|
||||
pub visible: Option<Visible>,
|
||||
#[darling(default)]
|
||||
pub shareable: bool,
|
||||
}
|
||||
|
||||
#[derive(FromVariant)]
|
||||
|
@ -764,6 +769,7 @@ pub struct ComplexObjectField {
|
|||
pub external: bool,
|
||||
pub provides: Option<String>,
|
||||
pub requires: Option<String>,
|
||||
pub shareable: bool,
|
||||
pub guard: Option<SpannedValue<String>>,
|
||||
pub visible: Option<Visible>,
|
||||
pub complexity: Option<ComplexityType>,
|
||||
|
|
|
@ -172,6 +172,7 @@ pub fn generate(
|
|||
.unwrap_or_else(|| quote! {::std::option::Option::None});
|
||||
let field_deprecation = gen_deprecation(&method_args.deprecation, &crate_name);
|
||||
let external = method_args.external;
|
||||
let shareable = method_args.shareable;
|
||||
let requires = match &method_args.requires {
|
||||
Some(requires) => quote! { ::std::option::Option::Some(#requires) },
|
||||
None => quote! { ::std::option::Option::None },
|
||||
|
@ -365,6 +366,7 @@ pub fn generate(
|
|||
external: #external,
|
||||
provides: #provides,
|
||||
requires: #requires,
|
||||
shareable: #shareable,
|
||||
visible: #visible,
|
||||
compute_complexity: #complexity,
|
||||
}));
|
||||
|
|
|
@ -137,6 +137,7 @@ pub fn generate(interface_args: &args::Interface) -> GeneratorResult<TokenStream
|
|||
provides,
|
||||
requires,
|
||||
visible,
|
||||
shareable,
|
||||
} in &interface_args.fields
|
||||
{
|
||||
let (name, method_name) = if let Some(method) = method {
|
||||
|
@ -274,6 +275,7 @@ pub fn generate(interface_args: &args::Interface) -> GeneratorResult<TokenStream
|
|||
external: #external,
|
||||
provides: #provides,
|
||||
requires: #requires,
|
||||
shareable: #shareable,
|
||||
visible: #visible,
|
||||
compute_complexity: ::std::option::Option::None,
|
||||
});
|
||||
|
|
|
@ -315,6 +315,7 @@ pub fn generate(
|
|||
.unwrap_or_else(|| quote! {::std::option::Option::None});
|
||||
let field_deprecation = gen_deprecation(&method_args.deprecation, &crate_name);
|
||||
let external = method_args.external;
|
||||
let shareable = method_args.shareable;
|
||||
let requires = match &method_args.requires {
|
||||
Some(requires) => quote! { ::std::option::Option::Some(#requires) },
|
||||
None => quote! { ::std::option::Option::None },
|
||||
|
@ -507,6 +508,7 @@ pub fn generate(
|
|||
external: #external,
|
||||
provides: #provides,
|
||||
requires: #requires,
|
||||
shareable: #shareable,
|
||||
visible: #visible,
|
||||
compute_complexity: #complexity,
|
||||
});
|
||||
|
|
|
@ -127,6 +127,7 @@ pub fn generate(object_args: &args::SimpleObject) -> GeneratorResult<TokenStream
|
|||
.unwrap_or_else(|| quote! {::std::option::Option::None});
|
||||
let field_deprecation = gen_deprecation(&field.deprecation, &crate_name);
|
||||
let external = field.external;
|
||||
let shareable = field.shareable;
|
||||
let requires = match &field.requires {
|
||||
Some(requires) => quote! { ::std::option::Option::Some(#requires) },
|
||||
None => quote! { ::std::option::Option::None },
|
||||
|
@ -174,6 +175,7 @@ pub fn generate(object_args: &args::SimpleObject) -> GeneratorResult<TokenStream
|
|||
external: #external,
|
||||
provides: #provides,
|
||||
requires: #requires,
|
||||
shareable: #shareable,
|
||||
visible: #visible,
|
||||
compute_complexity: ::std::option::Option::None,
|
||||
});
|
||||
|
|
|
@ -267,6 +267,7 @@ pub fn generate(
|
|||
external: false,
|
||||
requires: ::std::option::Option::None,
|
||||
provides: ::std::option::Option::None,
|
||||
shareable: false,
|
||||
visible: #visible,
|
||||
compute_complexity: #complexity,
|
||||
});
|
||||
|
|
|
@ -170,6 +170,9 @@ impl Registry {
|
|||
if let Some(provides) = field.provides {
|
||||
write!(sdl, " @provides(fields: \"{}\")", provides).ok();
|
||||
}
|
||||
if field.shareable {
|
||||
write!(sdl, " @shareable").ok();
|
||||
}
|
||||
}
|
||||
|
||||
writeln!(sdl).ok();
|
||||
|
|
|
@ -166,6 +166,7 @@ pub struct MetaField {
|
|||
pub requires: Option<&'static str>,
|
||||
pub provides: Option<&'static str>,
|
||||
pub visible: Option<MetaVisibleFn>,
|
||||
pub shareable: bool,
|
||||
pub compute_complexity: Option<ComplexityType>,
|
||||
}
|
||||
|
||||
|
@ -619,6 +620,7 @@ impl Registry {
|
|||
external: false,
|
||||
requires: None,
|
||||
provides: None,
|
||||
shareable: false,
|
||||
visible: None,
|
||||
compute_complexity: None,
|
||||
},
|
||||
|
@ -664,6 +666,7 @@ impl Registry {
|
|||
external: false,
|
||||
requires: None,
|
||||
provides: None,
|
||||
shareable: false,
|
||||
visible: None,
|
||||
compute_complexity: None,
|
||||
},
|
||||
|
@ -694,6 +697,7 @@ impl Registry {
|
|||
external: false,
|
||||
requires: None,
|
||||
provides: None,
|
||||
shareable: false,
|
||||
visible: None,
|
||||
compute_complexity: None,
|
||||
},
|
||||
|
|
|
@ -131,6 +131,7 @@ impl<T: ObjectType> OutputType for QueryRoot<T> {
|
|||
external: false,
|
||||
requires: None,
|
||||
provides: None,
|
||||
shareable: false,
|
||||
visible: None,
|
||||
compute_complexity: None,
|
||||
},
|
||||
|
@ -162,6 +163,7 @@ impl<T: ObjectType> OutputType for QueryRoot<T> {
|
|||
external: false,
|
||||
requires: None,
|
||||
provides: None,
|
||||
shareable: false,
|
||||
visible: None,
|
||||
compute_complexity: None,
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue