dlp_api/state/
commit_record.rs1use std::mem::size_of;
2
3use bytemuck::{Pod, Zeroable};
4use solana_program::pubkey::Pubkey;
5
6use super::discriminator::{AccountDiscriminator, AccountWithDiscriminator};
7use crate::{
8 impl_to_bytes_with_discriminator_zero_copy,
9 impl_try_from_bytes_with_discriminator_zero_copy,
10};
11
12#[repr(C)]
14#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
15pub struct CommitRecord {
16 pub identity: Pubkey,
18
19 pub account: Pubkey,
21
22 pub nonce: u64,
24
25 pub lamports: u64,
27}
28
29impl AccountWithDiscriminator for CommitRecord {
30 fn discriminator() -> AccountDiscriminator {
31 AccountDiscriminator::CommitRecord
32 }
33}
34
35impl CommitRecord {
36 pub fn size_with_discriminator() -> usize {
37 8 + size_of::<CommitRecord>()
38 }
39}
40
41impl_to_bytes_with_discriminator_zero_copy!(CommitRecord);
42impl_try_from_bytes_with_discriminator_zero_copy!(CommitRecord);