oil_chat_api/state/
message.rs1use serde::{Deserialize, Serialize};
2use steel::*;
3use crate::state::message_pda;
4use super::ChatAccount;
5
6#[repr(C)]
7#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable, Serialize, Deserialize)]
8pub struct Message {
9 pub authority: Pubkey, pub message_id: u64, pub parent_message_id: u64, pub parent_message_pda: Pubkey, pub created_at: u64, pub message_hash: [u8; 32], pub reaction_count: u16, pub _padding: u16, pub _padding2: u32, }
19
20impl Message {
21 pub fn pda(&self) -> (Pubkey, u8) {
22 message_pda(self.authority, self.message_id)
23 }
24}
25
26account!(ChatAccount, Message);