spherenet-program-whitelist-interface 0.3.0

Interface of SphereNet's Program Whitelist Program
Documentation
//! Onchain instructions for the program Whitelist program

mod accept_authority_transfer;
mod approve_whitelist_entry;
mod cancel_authority_transfer;
mod initiate_authority_transfer;
mod reject_whitelist_entry;
mod remove_whitelist_entry;
mod request_whitelist_entry;

use core::mem::MaybeUninit;
pub use {
    accept_authority_transfer::*, approve_whitelist_entry::*,
    cancel_authority_transfer::*, initiate_authority_transfer::*,
    reject_whitelist_entry::*, remove_whitelist_entry::*,
    request_whitelist_entry::*,
};

pub const UNINIT_BYTE: MaybeUninit<u8> = MaybeUninit::<u8>::uninit();

#[inline(always)]
pub fn write_bytes(destination: &mut [MaybeUninit<u8>], source: &[u8]) {
    for (d, s) in destination.iter_mut().zip(source.iter()) {
        d.write(*s);
    }
}

#[cfg(feature = "solana-p")]
mod solana_util;

#[cfg(feature = "solana-p")]
pub use solana_util::*;