Trait json_ld::object::MappedEq

source ·
pub trait MappedEq<T = Self>where
    T: ?Sized,{
    type BlankId;

    // Required method
    fn mapped_eq<'a, 'b, F>(&'a self, other: &T, f: F) -> bool
       where F: Clone + Fn(&'a Self::BlankId) -> &'b Self::BlankId,
             Self::BlankId: 'a + 'b;
}

Required Associated Types§

Required Methods§

source

fn mapped_eq<'a, 'b, F>(&'a self, other: &T, f: F) -> boolwhere F: Clone + Fn(&'a Self::BlankId) -> &'b Self::BlankId, Self::BlankId: 'a + 'b,

Structural equality with mapped blank identifiers.

Does not care for metadata.

Implementations on Foreign Types§

source§

impl<T> MappedEq<HashSet<T, RandomState>> for HashSet<T, RandomState>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &HashSet<T, RandomState>, f: F) -> boolwhere F: Clone + Fn(&'a <HashSet<T, RandomState> as MappedEq<HashSet<T, RandomState>>>::BlankId) -> &'b <HashSet<T, RandomState> as MappedEq<HashSet<T, RandomState>>>::BlankId, <HashSet<T, RandomState> as MappedEq<HashSet<T, RandomState>>>::BlankId: 'a + 'b,

source§

impl<T> MappedEq<Option<T>> for Option<T>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &Option<T>, f: F) -> boolwhere F: Clone + Fn(&'a <Option<T> as MappedEq<Option<T>>>::BlankId) -> &'b <Option<T> as MappedEq<Option<T>>>::BlankId, <Option<T> as MappedEq<Option<T>>>::BlankId: 'a + 'b,

source§

impl<T, M> MappedEq<Entry<T, M>> for Entry<T, M>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &Entry<T, M>, f: F) -> boolwhere F: Clone + Fn(&'a <Entry<T, M> as MappedEq<Entry<T, M>>>::BlankId) -> &'b <Entry<T, M> as MappedEq<Entry<T, M>>>::BlankId, <Entry<T, M> as MappedEq<Entry<T, M>>>::BlankId: 'a + 'b,

source§

impl<T> MappedEq<Vec<T, Global>> for Vec<T, Global>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &Vec<T, Global>, f: F) -> boolwhere F: Clone + Fn(&'a <Vec<T, Global> as MappedEq<Vec<T, Global>>>::BlankId) -> &'b <Vec<T, Global> as MappedEq<Vec<T, Global>>>::BlankId, <Vec<T, Global> as MappedEq<Vec<T, Global>>>::BlankId: 'a + 'b,

source§

impl<T, M> MappedEq<Meta<T, M>> for Meta<T, M>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &Meta<T, M>, f: F) -> boolwhere F: Clone + Fn(&'a <Meta<T, M> as MappedEq<Meta<T, M>>>::BlankId) -> &'b <Meta<T, M> as MappedEq<Meta<T, M>>>::BlankId, <Meta<T, M> as MappedEq<Meta<T, M>>>::BlankId: 'a + 'b,

source§

impl<T> MappedEq<[T]> for [T]where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &[T], f: F) -> boolwhere F: Clone + Fn(&'a <[T] as MappedEq<[T]>>::BlankId) -> &'b <[T] as MappedEq<[T]>>::BlankId, <[T] as MappedEq<[T]>>::BlankId: 'a + 'b,

source§

impl<T> MappedEq<Stripped<T>> for Stripped<T>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &Stripped<T>, f: F) -> boolwhere F: Clone + Fn(&'a <Stripped<T> as MappedEq<Stripped<T>>>::BlankId) -> &'b <Stripped<T> as MappedEq<Stripped<T>>>::BlankId, <Stripped<T> as MappedEq<Stripped<T>>>::BlankId: 'a + 'b,

source§

impl<'u, 't, U, T> MappedEq<&'u U> for &'t Twhere T: MappedEq<U>,

§

type BlankId = <T as MappedEq<U>>::BlankId

source§

fn mapped_eq<'a, 'b, F>(&'a self, other: &&'u U, f: F) -> boolwhere F: Clone + Fn(&'a <&'t T as MappedEq<&'u U>>::BlankId) -> &'b <&'t T as MappedEq<&'u U>>::BlankId, <&'t T as MappedEq<&'u U>>::BlankId: 'a + 'b,

Implementors§

source§

impl<T, B> MappedEq<Id<T, B>> for json_ld::Id<T, B>where T: PartialEq<T>, B: PartialEq<B>,

§

type BlankId = B

source§

impl<T, B> MappedEq<Id<T, B>> for json_ld::ValidId<T, B>where T: PartialEq<T>, B: PartialEq<B>,

§

type BlankId = B

source§

impl<T, B, M> MappedEq<Object<T, B, M>> for Object<T, B, M>where T: Eq + Hash, B: Eq + Hash,

§

type BlankId = B

source§

impl<T, B, M> MappedEq<Node<T, B, M>> for Node<T, B, M>where T: Eq + Hash, B: Eq + Hash,

§

type BlankId = B

source§

impl<T, B, M> MappedEq<Properties<T, B, M>> for Properties<T, B, M>where T: Eq + Hash, B: Eq + Hash,

§

type BlankId = B

source§

impl<T, B, M> MappedEq<ReverseProperties<T, B, M>> for ReverseProperties<T, B, M>where T: Eq + Hash, B: Eq + Hash,

§

type BlankId = B

source§

impl<T, B, M> MappedEq<List<T, B, M>> for List<T, B, M>where T: Eq + Hash, B: Eq + Hash,

§

type BlankId = B

source§

impl<T, M> MappedEq<Indexed<T, M>> for Indexed<T, M>where T: MappedEq<T>,

§

type BlankId = <T as MappedEq<T>>::BlankId