Trait creusot_contracts::logic::ops::IndexLogic

source ·
pub trait IndexLogic<I: ?Sized> {
    type Item;

    // Required method
    fn index_logic(self, idx: I) -> Self::Item;
}
Expand description

Used for indexing operations (container[index]) in pearlite.

Required Associated Types§

Required Methods§

source

fn index_logic(self, idx: I) -> Self::Item

Performs the indexing (container[index]) operation.

logic

Implementations on Foreign Types§

source§

impl<T> IndexLogic<usize> for [T]

source§

fn index_logic(self, ix: usize) -> Self::Item

logic

pearlite! { self@[ix@] }

§

type Item = T

source§

impl<T> IndexLogic<Int> for [T]

source§

fn index_logic(self, ix: Int) -> Self::Item

logic

pearlite! { self@[ix] }

§

type Item = T

source§

impl<T, const N: usize> IndexLogic<usize> for [T; N]

source§

fn index_logic(self, ix: usize) -> Self::Item

logic

pearlite! { self@[ix@] }

§

type Item = T

source§

impl<T, const N: usize> IndexLogic<Int> for [T; N]

source§

fn index_logic(self, ix: Int) -> Self::Item

logic

pearlite! { self@[ix] }

§

type Item = T

Implementors§

source§

impl<A: ?Sized, B> IndexLogic<A> for Mapping<A, B>

§

type Item = B

source§

impl<K, V> IndexLogic<K> for FMap<K, V>

§

type Item = V

source§

impl<T> IndexLogic<Int> for Snapshot<Seq<T>>

§

type Item = T

source§

impl<T> IndexLogic<Int> for Seq<T>

§

type Item = T

source§

impl<T, A: Allocator> IndexLogic<usize> for VecDeque<T, A>

§

type Item = T

source§

impl<T, A: Allocator> IndexLogic<usize> for Vec<T, A>

§

type Item = T

source§

impl<T, A: Allocator> IndexLogic<Int> for VecDeque<T, A>

§

type Item = T

source§

impl<T, A: Allocator> IndexLogic<Int> for Vec<T, A>

§

type Item = T