1 unstable release

0.7.4 May 30, 2024

#45 in #parse-json

Download history 118/week @ 2024-06-12 37/week @ 2024-06-19 36/week @ 2024-06-26 50/week @ 2024-07-03 64/week @ 2024-07-10 73/week @ 2024-07-17 109/week @ 2024-07-24 78/week @ 2024-07-31 112/week @ 2024-08-07 144/week @ 2024-08-14 91/week @ 2024-08-21 149/week @ 2024-08-28 216/week @ 2024-09-04 259/week @ 2024-09-11 379/week @ 2024-09-18 189/week @ 2024-09-25

1,050 downloads per month
Used in 17 crates (6 directly)

MIT/Apache

510KB
11K SLoC

linera-alloy-json-abi

Full Ethereum JSON-ABI implementation.

This crate is a re-implementation of a part of ethabi's API, with a few main differences:

  • the Contract struct is now called JsonAbi and also contains the fallback and receive functions
  • the Param and EventParam structs only partially parse the type string instead of fully resolving it into a Solidity type

Examples

Parse a JSON ABI file into a JsonAbi struct:

use linera_alloy_json_abi::JsonAbi;

# stringify!(
let path = "path/to/abi.json";
let json = std::fs::read_to_string(path).unwrap();
# );
# let json = "[]";
let abi: JsonAbi = serde_json::from_str(&json).unwrap();
for item in abi.items() {
    println!("{item:?}");
}

Dependencies

~4.5–7.5MB
~143K SLoC