1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use super::{AdviceSetError, CodeBlock, Felt};
use winterfell::ProverError;

// EXECUTION ERROR
// ================================================================================================

#[derive(Debug)]
pub enum ExecutionError {
    AdviceSetLookupFailed(AdviceSetError),
    AdviceSetNotFound([u8; 32]),
    AdviceSetUpdateFailed(AdviceSetError),
    DivideByZero(usize),
    EmptyAdviceTape(usize),
    FailedAssertion(usize),
    InvalidFmpValue(Felt, Felt),
    InvalidPowerOfTwo(Felt),
    NotBinaryValue(Felt),
    NotU32Value(Felt),
    ProverError(ProverError),
    TooManyStackOutputs(usize),
    UnexecutableCodeBlock(CodeBlock),
    UnsupportedCodeBlock(CodeBlock),
}