Struct PortConnectivity

Source
pub struct PortConnectivity<TS> { /* private fields */ }
Expand description

Internal connectivity from one port to any number of opposing ports.

Implementations§

Source§

impl<TS> PortConnectivity<TS>

Source

pub fn insert(&mut self, index: usize, element: TS) -> bool
where TS: PartialOrder,

Inserts an element by reference, ensuring that the index exists.

Source

pub fn insert_ref(&mut self, index: usize, element: &TS) -> bool
where TS: PartialOrder + Clone,

Inserts an element by reference, ensuring that the index exists.

Source

pub fn add_port(&mut self, port: usize, summary: Antichain<TS>)

Introduces a summary for port. Panics if a summary already exists.

Source

pub fn iter_ports(&self) -> impl Iterator<Item = (usize, &Antichain<TS>)>

Borrowing iterator of port identifiers and antichains.

Source

pub fn get(&self, index: usize) -> Option<&Antichain<TS>>

Returns the associated path summary, if it exists.

Trait Implementations§

Source§

impl<TS: Clone> Clone for PortConnectivity<TS>

Source§

fn clone(&self) -> PortConnectivity<TS>

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<TS> Columnar for PortConnectivity<TS>

Source§

type Ref<'a> = PortConnectivityReference<<BTreeMap<usize, Antichain<TS>> as Columnar>::Ref<'a>> where BTreeMap<usize, Antichain<TS>>: 'a

For each lifetime, a reference with that lifetime. Read more
Source§

type Container = PortConnectivityContainer<<BTreeMap<usize, Antichain<TS>> as Columnar>::Container>

The type that stores the columnar representation. Read more
Source§

fn copy_from<'a>(&mut self, other: Self::Ref<'a>)

Repopulates self from a reference. Read more
Source§

fn into_owned<'a>(other: Self::Ref<'a>) -> Self

Produce an instance of Self from Self::Ref<'a>.
Source§

fn as_columns<'a, I>(selves: I) -> Self::Container
where I: IntoIterator<Item = &'a Self>, Self: 'a,

Converts a sequence of the references to the type into columnar form.
Source§

fn into_columns<I>(selves: I) -> Self::Container
where I: IntoIterator<Item = Self>, Self: Sized,

Converts a sequence of the type into columnar form. Read more
Source§

impl<TS> Container<PortConnectivity<TS>> for PortConnectivityContainer<<BTreeMap<usize, Antichain<TS>> as Columnar>::Container>

Source§

type Borrowed<'a> = PortConnectivityContainer<<<BTreeMap<usize, Antichain<TS>> as Columnar>::Container as Container<BTreeMap<usize, Antichain<TS>>>>::Borrowed<'a>> where BTreeMap<usize, Antichain<TS>>: 'a

The type of a borrowed container. Read more
Source§

fn borrow<'a>(&'a self) -> Self::Borrowed<'a>

Converts a reference to the type to a borrowed variant.
Source§

impl<TS: Debug> Debug for PortConnectivity<TS>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<TS> Default for PortConnectivity<TS>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de, TS> Deserialize<'de> for PortConnectivity<TS>
where TS: Deserialize<'de>,

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<TS> FromIterator<(usize, Antichain<TS>)> for PortConnectivity<TS>

Source§

fn from_iter<T>(iter: T) -> Self
where T: IntoIterator<Item = (usize, Antichain<TS>)>,

Creates a value from an iterator. Read more
Source§

impl<TS, R0> PartialEq<PortConnectivity<TS>> for PortConnectivityReference<R0>
where R0: PartialEq<BTreeMap<usize, Antichain<TS>>>,

Source§

fn eq(&self, other: &PortConnectivity<TS>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<TS: PartialEq> PartialEq for PortConnectivity<TS>

Source§

fn eq(&self, other: &PortConnectivity<TS>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'columnar, TS, C0> Push<&'columnar PortConnectivity<TS>> for PortConnectivityContainer<C0>
where C0: Push<&'columnar BTreeMap<usize, Antichain<TS>>>,

Source§

fn push(&mut self, item: &'columnar PortConnectivity<TS>)

Pushes an item onto self.
Source§

fn extend(&mut self, iter: impl IntoIterator<Item = T>)

Pushes elements of an iterator onto self.
Source§

impl<TS, C0> Push<PortConnectivity<TS>> for PortConnectivityContainer<C0>
where C0: Push<BTreeMap<usize, Antichain<TS>>>,

Source§

fn push(&mut self, item: PortConnectivity<TS>)

Pushes an item onto self.
Source§

fn extend(&mut self, iter: impl IntoIterator<Item = T>)

Pushes elements of an iterator onto self.
Source§

impl<TS> Serialize for PortConnectivity<TS>
where TS: Serialize,

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<TS: Eq> Eq for PortConnectivity<TS>

Source§

impl<TS> StructuralPartialEq for PortConnectivity<TS>

Auto Trait Implementations§

§

impl<TS> Freeze for PortConnectivity<TS>

§

impl<TS> RefUnwindSafe for PortConnectivity<TS>
where TS: RefUnwindSafe,

§

impl<TS> Send for PortConnectivity<TS>
where TS: Send,

§

impl<TS> Sync for PortConnectivity<TS>
where TS: Sync,

§

impl<TS> Unpin for PortConnectivity<TS>

§

impl<TS> UnwindSafe for PortConnectivity<TS>
where TS: RefUnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> CopyAs<T> for T

Source§

fn copy_as(self) -> T

Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Data for T
where T: Clone + 'static,

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ExchangeData for T
where T: Data + Data,