Serialize all enums as externally tagged to guarantee compatibility with binary formats such as bincode or postcard
This commit is contained in:
parent
48ec50ae39
commit
a5e5101375
96 changed files with 703 additions and 715 deletions
|
@ -4,24 +4,24 @@
|
|||
#![feature(trait_alias)]
|
||||
|
||||
// @set Orig = "$.index[*][?(@.name == 'Orig')].id"
|
||||
// @is "$.index[*][?(@.name == 'Orig')].kind" '"trait"'
|
||||
// @has "$.index[*][?(@.name == 'Orig')].inner.trait"
|
||||
pub trait Orig<T> {}
|
||||
|
||||
// @set Alias = "$.index[*][?(@.name == 'Alias')].id"
|
||||
// @is "$.index[*][?(@.name == 'Alias')].kind" '"trait_alias"'
|
||||
// @is "$.index[*][?(@.name == 'Alias')].inner.generics" '{"params": [], "where_predicates": []}'
|
||||
// @count "$.index[*][?(@.name == 'Alias')].inner.params[*]" 1
|
||||
// @is "$.index[*][?(@.name == 'Alias')].inner.params[0].trait_bound.trait.id" $Orig
|
||||
// @is "$.index[*][?(@.name == 'Alias')].inner.params[0].trait_bound.trait.args.angle_bracketed.args[0].type.inner" '"i32"'
|
||||
// @has "$.index[*][?(@.name == 'Alias')].inner.trait_alias"
|
||||
// @is "$.index[*][?(@.name == 'Alias')].inner.trait_alias.generics" '{"params": [], "where_predicates": []}'
|
||||
// @count "$.index[*][?(@.name == 'Alias')].inner.trait_alias.params[*]" 1
|
||||
// @is "$.index[*][?(@.name == 'Alias')].inner.trait_alias.params[0].trait_bound.trait.id" $Orig
|
||||
// @is "$.index[*][?(@.name == 'Alias')].inner.trait_alias.params[0].trait_bound.trait.args.angle_bracketed.args[0].type.primitive" '"i32"'
|
||||
pub trait Alias = Orig<i32>;
|
||||
|
||||
pub struct Struct;
|
||||
|
||||
impl Orig<i32> for Struct {}
|
||||
|
||||
// @is "$.index[*][?(@.name=='takes_alias')].inner.decl.inputs[0][1].kind" '"impl_trait"'
|
||||
// @is "$.index[*][?(@.name=='takes_alias')].inner.decl.inputs[0][1].inner[0].trait_bound.trait.id" $Alias
|
||||
// @is "$.index[*][?(@.name=='takes_alias')].inner.generics.params[0].kind.type.bounds[0].trait_bound.trait.id" $Alias
|
||||
// @has "$.index[*][?(@.name=='takes_alias')].inner.function.decl.inputs[0][1].impl_trait"
|
||||
// @is "$.index[*][?(@.name=='takes_alias')].inner.function.decl.inputs[0][1].impl_trait[0].trait_bound.trait.id" $Alias
|
||||
// @is "$.index[*][?(@.name=='takes_alias')].inner.function.generics.params[0].kind.type.bounds[0].trait_bound.trait.id" $Alias
|
||||
pub fn takes_alias(_: impl Alias) {}
|
||||
// FIXME: Should the trait be mentioned in both the decl and generics?
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue