mlx_rs::error

Struct Exception

Source
pub struct Exception { /* private fields */ }
Expand description

Exception. Most will come from the C API.

Implementations§

Source§

impl Exception

Source

pub fn what(&self) -> &str

The error message.

Source

pub fn location(&self) -> &'static Location<'static>

The location of the error.

The location is obtained from std::panic::Location::caller() and points to the location in the code where the error was created and not where it was propagated.

Source

pub fn custom(what: impl Into<String>) -> Self

Creates a new exception with the given message.

Trait Implementations§

Source§

impl<'a, F, G> CallMut<&'a [Array], Vec<Array>, Exception> for Compiled<F, G>
where F: FnMut(&[Array]) -> Result<Vec<Array>, Exception> + 'a, G: FnMut(&[Array]) -> Result<Vec<Array>, Exception> + 'a,

Source§

fn call_mut(&mut self, args: &[Array]) -> Result<Vec<Array>, Exception>

Calls the compiled function with the given arguments.
Source§

impl<'a, F, G> CallMut<&'a Array, Array, Exception> for Compiled<F, G>
where F: FnMut(&Array) -> Result<Array, Exception> + 'a, G: FnMut(&[Array]) -> Result<Vec<Array>, Exception> + 'a,

Source§

fn call_mut(&mut self, args: &Array) -> Result<Array, Exception>

Calls the compiled function with the given arguments.
Source§

impl<'a, F, G> CallMut<(&'a Array, &'a Array), Array, Exception> for Compiled<F, G>
where F: FnMut((&Array, &Array)) -> Result<Array, Exception> + 'a, G: FnMut(&[Array]) -> Result<Vec<Array>, Exception> + 'a,

Source§

fn call_mut(&mut self, args: (&Array, &Array)) -> Result<Array, Exception>

Calls the compiled function with the given arguments.
Source§

impl<'a, F, G> CallMut<(&'a Array, &'a Array, &'a Array), Array, Exception> for Compiled<F, G>
where F: FnMut((&Array, &Array, &Array)) -> Result<Array, Exception> + 'a, G: FnMut(&[Array]) -> Result<Vec<Array>, Exception> + 'a,

Source§

fn call_mut( &mut self, args: (&Array, &Array, &Array), ) -> Result<Array, Exception>

Calls the compiled function with the given arguments.
Source§

impl<U, F, G> CallMutWithState<U, &[Array], Vec<Array>, Exception> for Compiled<F, G>

Source§

fn call_mut( &mut self, state: &mut U, args: &[Array], ) -> Result<Vec<Array>, Exception>

Call the function with the given state and arguments.
Source§

impl<U, F, G> CallMutWithState<U, &Array, Array, Exception> for Compiled<F, G>

Source§

fn call_mut(&mut self, state: &mut U, args: &Array) -> Result<Array, Exception>

Call the function with the given state and arguments.
Source§

impl<U, F, G> CallMutWithState<U, (&Array, &Array), Array, Exception> for Compiled<F, G>

Source§

fn call_mut( &mut self, state: &mut U, args: (&Array, &Array), ) -> Result<Array, Exception>

Call the function with the given state and arguments.
Source§

impl<U, F, G> CallMutWithState<U, (&Array, &Array, &Array), Array, Exception> for Compiled<F, G>

Source§

fn call_mut( &mut self, state: &mut U, args: (&Array, &Array, &Array), ) -> Result<Array, Exception>

Call the function with the given state and arguments.
Source§

impl<F> Compile<&[Array], Vec<Array>, Exception> for F
where F: FnMut(&[Array]) -> Result<Vec<Array>, Exception> + 'static,

Source§

type Args<'a> = &'a [Array]

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMut<Self::Args<'args>, Vec<Array>, Exception>

Compiles the function.
Source§

impl<F> Compile<&Array, Array, Exception> for F
where F: FnMut(&Array) -> Result<Array, Exception> + 'static,

Source§

type Args<'a> = &'a Array

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMut<Self::Args<'args>, Array, Exception>

Compiles the function.
Source§

impl<F> Compile<(&Array, &Array), Array, Exception> for F
where F: FnMut((&Array, &Array)) -> Result<Array, Exception> + 'static,

Source§

type Args<'a> = (&'a Array, &'a Array)

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMut<Self::Args<'args>, Array, Exception>

Compiles the function.
Source§

impl<F> Compile<(&Array, &Array, &Array), Array, Exception> for F
where F: FnMut((&Array, &Array, &Array)) -> Result<Array, Exception> + 'static,

Source§

type Args<'a> = (&'a Array, &'a Array, &'a Array)

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMut<Self::Args<'args>, Array, Exception>

Compiles the function.
Source§

impl<F, U> CompileWithState<U, &[Array], Vec<Array>, Exception> for F
where F: FnMut(&mut U, &[Array]) -> Result<Vec<Array>, Exception> + 'static, U: Updatable,

Source§

type Args<'a> = &'a [Array]

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMutWithState<U, Self::Args<'args>, Vec<Array>, Exception>

Compile the function.
Source§

impl<F, U> CompileWithState<U, &Array, Array, Exception> for F
where F: FnMut(&mut U, &Array) -> Result<Array, Exception> + 'static, U: Updatable,

Source§

type Args<'a> = &'a Array

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMutWithState<U, Self::Args<'args>, Array, Exception>

Compile the function.
Source§

impl<F, U> CompileWithState<U, (&Array, &Array), Array, Exception> for F
where F: FnMut(&mut U, (&Array, &Array)) -> Result<Array, Exception> + 'static, U: Updatable,

Source§

type Args<'a> = (&'a Array, &'a Array)

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMutWithState<U, Self::Args<'args>, Array, Exception>

Compile the function.
Source§

impl<F, U> CompileWithState<U, (&Array, &Array, &Array), Array, Exception> for F
where F: FnMut(&mut U, (&Array, &Array, &Array)) -> Result<Array, Exception> + 'static, U: Updatable,

Source§

type Args<'a> = (&'a Array, &'a Array, &'a Array)

The type of the arguments that the returned closure takes. Read more
Source§

fn compile<'args>( self, shapeless: bool, ) -> impl CallMutWithState<U, Self::Args<'args>, Array, Exception>

Compile the function.
Source§

impl Debug for Exception

Source§

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

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

impl Display for Exception

Source§

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

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

impl Error for Exception

1.30.0 · Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<&str> for Exception

Source§

fn from(what: &str) -> Self

Converts to this type from the input type.
Source§

impl From<CrossEntropyBuildError> for Exception

Source§

fn from(value: CrossEntropyBuildError) -> Self

Converts to this type from the input type.
Source§

impl From<Exception> for AsSliceError

Source§

fn from(source: Exception) -> Self

Converts to this type from the input type.
Source§

impl From<Exception> for IoError

Source§

fn from(source: Exception) -> Self

Converts to this type from the input type.
Source§

impl From<Exception> for MultiHeadAttentionBuildError

Source§

fn from(source: Exception) -> Self

Converts to this type from the input type.
Source§

impl From<Exception> for String

Source§

fn from(e: Exception) -> Self

Converts to this type from the input type.
Source§

impl From<Exception> for TransformerBulidError

Source§

fn from(source: Exception) -> Self

Converts to this type from the input type.
Source§

impl From<Infallible> for Exception

Source§

fn from(_: Infallible) -> Self

Converts to this type from the input type.
Source§

impl<'a, F> IntoGrad<'a, &[Array], Array, Exception> for F
where F: FnMut(&[Array]) -> Result<Array> + 'a,

Source§

fn into_grad( self, argument_numbers: impl IntoOption<&'a [i32]>, ) -> impl FnMut(&[Array]) -> Result<Array> + 'a

Convert the function/closure into a closure that computes the gradient.
Source§

impl<'a, F> IntoGrad<'a, &[Array], Vec<Array>, Exception> for F
where F: FnMut(&[Array]) -> Result<Vec<Array>> + 'a,

Source§

fn into_grad( self, argument_numbers: impl IntoOption<&'a [i32]>, ) -> impl FnMut(&[Array]) -> Result<Vec<Array>> + 'a

Convert the function/closure into a closure that computes the gradient.
Source§

impl<'a, F> IntoGrad<'a, &Array, Array, Exception> for F
where F: FnMut(&Array) -> Result<Array> + 'a,

Source§

fn into_grad( self, argument_numbers: impl IntoOption<&'a [i32]>, ) -> impl FnMut(&Array) -> Result<Array> + 'a

Convert the function/closure into a closure that computes the gradient.
Source§

impl<'a, F> IntoGrad<'a, &Array, Vec<Array>, Exception> for F
where F: FnMut(&Array) -> Result<Vec<Array>> + 'a,

Source§

fn into_grad( self, argument_numbers: impl IntoOption<&'a [i32]>, ) -> impl FnMut(&Array) -> Result<Vec<Array>> + 'a

Convert the function/closure into a closure that computes the gradient.
Source§

impl<'a, F, Arr, Args> IntoKeyedValueAndGrad<'a, Arr, Args, Exception> for F
where F: FnMut(HashMap<Rc<str>, Array>, Args) -> Result<Vec<Array>> + 'a, Arr: AsRef<Array>, Args: Clone,

Source§

fn into_keyed_value_and_grad( self, ) -> impl FnMut(KeyedParameters<Arr>, Args) -> Result<(Vec<Array>, KeyedGrad)> + 'a

Convert the function/closure into a closure that computes the value and gradient.
Source§

impl<'a, F, M, Args> IntoModuleValueAndGrad<'a, M, Args, Array, Exception> for F
where M: ModuleParameters + 'a, F: FnMut(&mut M, Args) -> Result<Array, Exception> + 'a, Args: Clone,

Source§

fn into_module_value_and_grad( self, ) -> impl FnMut(&mut M, Args) -> Result<(Array, FlattenedModuleParam), Exception> + 'a

Computes the valud and gradient of the passed function f(model, args) with regard to the model’s trainable parameters.
Source§

impl<'a, F, M, Args> IntoModuleValueAndGrad<'a, M, Args, Vec<Array>, Exception> for F
where M: ModuleParameters + 'a, F: FnMut(&mut M, Args) -> Result<Vec<Array>, Exception> + 'a, Args: Clone,

Source§

fn into_module_value_and_grad( self, ) -> impl FnMut(&mut M, Args) -> Result<(Vec<Array>, FlattenedModuleParam), Exception> + 'a

Computes the valud and gradient of the passed function f(model, args) with regard to the model’s trainable parameters.
Source§

impl<'a, F> IntoValueAndGrad<'a, Exception> for F
where F: FnMut(&[Array]) -> Result<Vec<Array>> + 'a,

Source§

fn into_value_and_grad( self, argument_numbers: impl IntoOption<&'a [i32]>, ) -> impl FnMut(&[Array]) -> Result<(Vec<Array>, Vec<Array>)> + 'a

Convert the function/closure into a closure that computes the value and gradient.
Source§

impl PartialEq for Exception

Source§

fn eq(&self, other: &Exception) -> 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 StructuralPartialEq for Exception

Auto Trait Implementations§

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> 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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoOption<T> for T

Source§

fn into_option(self) -> Option<T>

Convert into an Option.
Source§

impl<T> IntoStrideBy for T

Source§

fn stride_by(self, stride: i32) -> StrideBy<T>

Create a stride indexing operation.
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

default fn to_string(&self) -> String

Converts the given value to a String. 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.