pub trait Wham {} pub struct GeorgeMichael {} /// Wham for George Michael impl Wham for GeorgeMichael {} // Find IDs. //@ set wham = "$.index[*][?(@.name=='Wham')].id" //@ set gmWham = "$.index[*][?(@.docs=='Wham for George Michael')].id" //@ set gm = "$.index[*][?(@.name=='GeorgeMichael')].id" // Both struct and trait point to impl. //@ has "$.index[*][?(@.name=='GeorgeMichael')].inner.struct.impls[*]" $gmWham //@ is "$.index[*][?(@.name=='Wham')].inner.trait.implementations[*]" $gmWham // Impl points to both struct and trait. //@ is "$.index[*][?(@.docs == 'Wham for George Michael')].inner.impl.trait.id" $wham //@ is "$.index[*][?(@.docs == 'Wham for George Michael')].inner.impl.for.resolved_path.id" $gm