Skip to main content

ReversibleEdge

Trait ReversibleEdge 

Source
pub trait ReversibleEdge {
    // Required methods
    fn pdg(&self) -> isize;
    fn pol_symbol(&self, flow: Flow) -> Option<Symbol>;
    fn polarization<'a, T, H>(
        &self,
        add_args: &'a [T],
        hedge_data: &H,
        flow: Flow,
    ) -> Atom
       where &'a T: Into<AtomOrView<'a>>,
             H: HedgePolarizationData;
    fn polarization_structure<'a, T, H>(
        &self,
        add_args: &'a [T],
        hedge_data: &H,
        flow: Flow,
    ) -> Option<PermutedStructure<ShadowedStructure<Aind>>>
       where &'a T: Into<AtomOrView<'a>>,
             H: HedgePolarizationData;
}

Required Methods§

Source

fn pdg(&self) -> isize

Source

fn pol_symbol(&self, flow: Flow) -> Option<Symbol>

Source

fn polarization<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Atom
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source

fn polarization_structure<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Option<PermutedStructure<ShadowedStructure<Aind>>>
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl ReversibleEdge for EdgeData<&Edge>

Source§

fn pdg(&self) -> isize

Source§

fn pol_symbol(&self, flow: Flow) -> Option<Symbol>

Source§

fn polarization<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Atom
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

fn polarization_structure<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Option<PermutedStructure<ShadowedStructure<Aind>>>
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

impl ReversibleEdge for EdgeData<&ParseEdge>

Source§

fn pdg(&self) -> isize

Source§

fn pol_symbol(&self, flow: Flow) -> Option<Symbol>

Source§

fn polarization<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Atom
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

fn polarization_structure<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Option<PermutedStructure<ShadowedStructure<Aind>>>
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

impl ReversibleEdge for EdgeData<(usize, isize)>

Source§

fn pdg(&self) -> isize

Source§

fn pol_symbol(&self, flow: Flow) -> Option<Symbol>

Source§

fn polarization<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Atom
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

fn polarization_structure<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Option<PermutedStructure<ShadowedStructure<Aind>>>
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

impl ReversibleEdge for EdgeData<ArcParticle>

Source§

fn pdg(&self) -> isize

Source§

fn pol_symbol(&self, flow: Flow) -> Option<Symbol>

Source§

fn polarization<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Atom
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Source§

fn polarization_structure<'a, T, H>( &self, add_args: &'a [T], hedge_data: &H, flow: Flow, ) -> Option<PermutedStructure<ShadowedStructure<Aind>>>
where &'a T: Into<AtomOrView<'a>>, H: HedgePolarizationData,

Implementors§