You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -72,6 +72,7 @@ For further documentation, see:
72
72
-[docs/contracts.md](./docs/ipc/contracts.md) for instructions on how to deploy FEVM actors on subnets.
73
73
-[docs/usage.md](./docs/ipc/usage.md) for instructions on how to use the `ipc-cli` to interact with subnets (from managing your identities, to sending funds to a subnet).
74
74
-[docs/deploying-hierarchy.md](./docs/ipc/deploying-hierarchy.md) for instructions on how to deploy your own instance of IPC on a network.
75
+
-[docs/contract-errors.md](./docs/ipc/contract-errors.md) for a comprehensive reference of all possible contract errors and how to resolve them.
// Standard Solidity Error(string) with message "This is a test error message"
234
+
let revert_string = "08c379a00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001a5468697320697320612074657374206572726f72206d6573736167650000000000";
235
+
236
+
let result = ContractErrorParser::parse_from_hex_str(revert_string).unwrap();
237
+
assert_eq!(result.name,"RevertString");
238
+
assert!(matches!(
239
+
result.error_type,
240
+
crate::error_parser::ErrorType::StandardRevert
241
+
));
242
+
// The message should contain "This is a test error" (may be truncated due to padding)
243
+
assert!(result.message.is_some());
244
+
let message = result.message.unwrap();
245
+
assert!(message.contains("This is a test error"));
Copy file name to clipboardExpand all lines: contracts/README.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,6 +20,10 @@ The original idea of IPC is presented in these [paper](https://research.protocol
20
20
21
21
The current specification draft is available [here](https://github.com/consensus-shipyard/IPC-design-reference-spec/blob/main/main.pdf).
22
22
23
+
## Contract Errors Reference
24
+
25
+
For a comprehensive reference of all possible contract errors and how to resolve them, see [docs/ipc/contract-errors.md](../docs/ipc/contract-errors.md). This document provides detailed information about error types, when they occur, and how to fix them.
26
+
23
27
# Deploying IPC Solidity contracts
24
28
25
29
Before deploying the contract, you'll need to configure the `RPC_URL` and `PRIVATE_KEY` environmental variables
0 commit comments