fuel_tx/receipt/
script_result.rs1use fuel_types::Word;
2
3#[derive(
4 Debug,
5 Copy,
6 Clone,
7 PartialEq,
8 Eq,
9 Hash,
10 serde::Serialize,
11 serde::Deserialize,
12 fuel_types::canonical::Deserialize,
13 fuel_types::canonical::Serialize,
14)]
15#[repr(u64)]
16pub enum ScriptExecutionResult {
17 Success,
18 Revert,
19 Panic,
20 GenericFailure(u64),
22}
23
24impl From<ScriptExecutionResult> for Word {
25 fn from(result: ScriptExecutionResult) -> Self {
26 match result {
27 ScriptExecutionResult::Success => 0x00,
28 ScriptExecutionResult::Revert => 0x01,
29 ScriptExecutionResult::Panic => 0x02,
30 ScriptExecutionResult::GenericFailure(value) => value,
31 }
32 }
33}
34
35impl From<Word> for ScriptExecutionResult {
36 fn from(value: u64) -> Self {
37 match value {
38 0x00 => Self::Success,
39 0x01 => Self::Revert,
40 0x02 => Self::Panic,
41 value => Self::GenericFailure(value),
42 }
43 }
44}