#move #macro #aptos #byte-array #sui

macro static-address-macro

A macro used for compile-time parsing of Move account addresses into byte arrays for near 0-cost static addresses

1 unstable release

0.2.2 Jul 22, 2022

#11 in #sui

29 downloads per month
Used in 11 crates (via static-address)

Apache-2.0

8KB
54 lines

static-address

Crates.io License Build Status Contributors

The static-address crate provides a macro static_address!, used for compile-time parsing of strings into a static address. This provides an efficient way of declaring Move account addresses in source code while incurring almost no runtime cost in programs, without having to declare the byte array yourself. The actual code is adapted from here.

Usage

let key =
    static_address!("0x80809acd8d3bc3d30aea82e5506f45951e3eb53e2fda39da6d772647e52c25cd");
assert_eq!(
    key.to_hex_literal(),
    "0x80809acd8d3bc3d30aea82e5506f45951e3eb53e2fda39da6d772647e52c25cd"
);

An example of using this for an Aptos project is available at crates/static-address-example-aptos.

License

static-address is licensed under the Apache License, version 2.0.

Dependencies

~3MB
~66K SLoC