[][src]Struct z3::ast::Array

pub struct Array<'ctx> { /* fields omitted */ }

Ast node representing an array value. An array in Z3 is a mapping from indices to values.

Implementations

impl<'ctx> Array<'ctx>[src]

pub fn new_const<S: Into<Symbol>>(
    ctx: &'ctx Context,
    name: S,
    domain: &Sort<'ctx>,
    range: &Sort<'ctx>
) -> Array<'ctx>
[src]

Create an Array which maps from indices of the domain Sort to values of the range Sort.

All values in the Array will be unconstrained.

pub fn fresh_const(
    ctx: &'ctx Context,
    prefix: &str,
    domain: &Sort<'ctx>,
    range: &Sort<'ctx>
) -> Array<'ctx>
[src]

pub fn const_array(
    ctx: &'ctx Context,
    domain: &Sort<'ctx>,
    val: &Dynamic<'ctx>
) -> Array<'ctx>
[src]

Create a "constant array", that is, an Array initialized so that all of the indices in the domain map to the given value val

pub fn translate<'dest_ctx>(&self, dest: &'dest_ctx Context) -> Array<'dest_ctx>[src]

pub fn select(&self, index: &Dynamic<'ctx>) -> Dynamic<'ctx>[src]

Get the value at a given index in the array.

Note that the index must be of the array's domain sort. The return type will be of the array's range sort.

pub fn store(&self, index: &Dynamic<'ctx>, value: &Dynamic<'ctx>) -> Self[src]

Update the value at a given index in the array.

Note that the index must be of the array's domain sort, and the value must be of the array's range sort.

Trait Implementations

impl<'ctx> Ast<'ctx> for Array<'ctx>[src]

impl<'ctx> Clone for Array<'ctx>[src]

impl<'ctx> Debug for Array<'ctx>[src]

impl<'ctx> Display for Array<'ctx>[src]

impl<'ctx> Drop for Array<'ctx>[src]

impl<'ctx> Eq for Array<'ctx>[src]

impl<'ctx> From<Array<'ctx>> for Z3_ast[src]

impl<'ctx> From<Array<'ctx>> for Dynamic<'ctx>[src]

impl<'ctx> Hash for Array<'ctx>[src]

impl<'ctx> PartialEq<Array<'ctx>> for Array<'ctx>[src]

impl<'ctx> TryFrom<Dynamic<'ctx>> for Array<'ctx>[src]

type Error = String

The type returned in the event of a conversion error.

Auto Trait Implementations

impl<'ctx> RefUnwindSafe for Array<'ctx>

impl<'ctx> !Send for Array<'ctx>

impl<'ctx> !Sync for Array<'ctx>

impl<'ctx> Unpin for Array<'ctx>

impl<'ctx> UnwindSafe for Array<'ctx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.