11 breaking releases

0.11.0 Dec 9, 2024
0.9.0 Nov 16, 2024
0.1.0 Jul 8, 2024

#14 in #pint

Download history 13/week @ 2024-08-26 47/week @ 2024-09-16 35/week @ 2024-09-23 7/week @ 2024-09-30 4/week @ 2024-10-07 213/week @ 2024-10-14 20/week @ 2024-10-21 135/week @ 2024-10-28 160/week @ 2024-11-04 551/week @ 2024-11-11 85/week @ 2024-11-18 9/week @ 2024-11-25 147/week @ 2024-12-02 227/week @ 2024-12-09

538 downloads per month
Used in 2 crates (via pint-abi)

Apache-2.0

115KB
2.5K SLoC

Macros for generating items from pint-generated contract ABI JSON.

The entry points for this crate are:

For a given contract, the following items are generated:

  • A mod representing storage.
  • For each predicate, a module with the following:
    • A Vars struct for the predicate's decision variables.

The aim for the generated items is to ease the construction of solutions including the encoding of keys, values and mutations from higher-level types. Items related to simplifying the process of building sets of Mutations and Keys for Solutions and queries.

See the mutations fn to start constructing a set of Mutations.

See the keys fn to start constructing a set of Keys.

The Mutations and Keys impls provides a set of builder methods that allow for writing Mutations and Keys to an inner Vec from higher-level values.

The final Vec<Mutation> or Vec<Key> can be produced using the From<Mutations> or From<Keys> conversion impls.

Dependencies

~3–4.5MB
~80K SLoC