klvm-traits 0.2.12

Traits for encoding and decoding KLVM objects.
Documentation

KLVM Traits

This is a library for encoding and decoding Rust values using a KLVM allocator. It provides implementations for every fixed-width signed and unsigned integer type, as well as many other values in the standard library that would be common to encode.

As well as the built-in implementations, this library exposes two derive macros for implementing the ToKlvm and FromKlvm traits on structs. They be marked with one of the following encodings:

  • #[klvm(tuple)] for unterminated lists such as (A . (B . C)).
  • #[klvm(list)] for proper lists such as (A B C), or in other words (A . (B . (C . ()))).
  • #[klvm(curry)] for curried arguments such as (c (q . A) (c (q . B) (c (q . C) 1))).