#public-key #solana #byte-array #macro #static #string #compile-time

macro static-pubkey

macro used for compile-time parsing of public key strings into byte arrays for near 0-cost static public keys

4 stable releases

1.0.3 Jun 10, 2022
1.0.2 Sep 29, 2021
1.0.1 Sep 28, 2021

#93 in #byte-array

Download history 217/week @ 2024-08-31 159/week @ 2024-09-07 227/week @ 2024-09-14 205/week @ 2024-09-21 220/week @ 2024-09-28 117/week @ 2024-10-05 162/week @ 2024-10-12 137/week @ 2024-10-19 238/week @ 2024-10-26 168/week @ 2024-11-02 79/week @ 2024-11-09 151/week @ 2024-11-16 173/week @ 2024-11-23 237/week @ 2024-11-30 279/week @ 2024-12-07 360/week @ 2024-12-14

1,070 downloads per month
Used in 47 crates (25 directly)

MIT license

4KB

static-pubkey

docs.rs

The static-pubkey crate provides a macro static_pubkey!, used for compile-time parsing of strings into a static public key. This prvodies an efficient way of declaring public keys in source code while incurring almost no runtime cost in solana programs, without having to declare the byte array yourself. The actual code is taken from here.

usage

#[cfg(test)]
mod test {
    use static_pubkey::static_pubkey;
    #[test]
    fn example() {
        let key = static_pubkey!("GjphYQcbP1m3FuDyCTUJf2mUMxKPE3j6feWU1rxvC7Ps");
        assert!(key.to_string() == "GjphYQcbP1m3FuDyCTUJf2mUMxKPE3j6feWU1rxvC7Ps");
    }
}

links


lib.rs:

provides a macro used for compile-time parsing of public key strings into byte arrays for near 0-cost static public keys.

Dependencies

~1.5MB
~39K SLoC