mirror of
https://github.com/d0zingcat/ore.git
synced 2026-06-05 15:11:28 +00:00
cleanup
This commit is contained in:
@@ -8,8 +8,8 @@ use solana_program::{
|
|||||||
use crate::{
|
use crate::{
|
||||||
instruction::CreateProofArgs,
|
instruction::CreateProofArgs,
|
||||||
loaders::*,
|
loaders::*,
|
||||||
state::{Discriminator, Proof},
|
state::Proof,
|
||||||
utils::create_pda,
|
utils::{create_pda, Discriminator},
|
||||||
PROOF,
|
PROOF,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +1,23 @@
|
|||||||
use std::mem::size_of;
|
use std::mem::size_of;
|
||||||
|
|
||||||
use solana_program::program_pack::Pack;
|
|
||||||
use solana_program::{self, sysvar};
|
|
||||||
use solana_program::{
|
use solana_program::{
|
||||||
account_info::AccountInfo, entrypoint::ProgramResult, program_error::ProgramError,
|
account_info::AccountInfo,
|
||||||
pubkey::Pubkey, system_program,
|
entrypoint::ProgramResult,
|
||||||
|
program_error::ProgramError,
|
||||||
|
program_pack::Pack,
|
||||||
|
pubkey::Pubkey,
|
||||||
|
system_program, {self, sysvar},
|
||||||
};
|
};
|
||||||
use spl_token::state::Mint;
|
use spl_token::state::Mint;
|
||||||
|
|
||||||
use crate::state::Discriminator;
|
|
||||||
use crate::{instruction::*, BUS, INITIAL_DIFFICULTY, MINT_ADDRESS, TREASURY_ADDRESS};
|
|
||||||
use crate::{
|
use crate::{
|
||||||
|
instruction::*,
|
||||||
loaders::*,
|
loaders::*,
|
||||||
state::{Bus, Treasury},
|
state::{Bus, Treasury},
|
||||||
utils::create_pda,
|
utils::create_pda,
|
||||||
BUS_COUNT, INITIAL_REWARD_RATE, MINT, TOKEN_DECIMALS, TREASURY,
|
utils::Discriminator,
|
||||||
|
BUS, BUS_COUNT, INITIAL_DIFFICULTY, INITIAL_REWARD_RATE, MINT, MINT_ADDRESS, TOKEN_DECIMALS,
|
||||||
|
TREASURY, TREASURY_ADDRESS,
|
||||||
};
|
};
|
||||||
|
|
||||||
pub fn process_initialize<'a, 'info>(
|
pub fn process_initialize<'a, 'info>(
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
use bytemuck::{Pod, Zeroable};
|
use bytemuck::{Pod, Zeroable};
|
||||||
|
|
||||||
use crate::{impl_account_from_bytes, impl_to_bytes};
|
use crate::{
|
||||||
|
impl_account_from_bytes, impl_to_bytes,
|
||||||
use super::{AccountDiscriminator, Discriminator};
|
utils::{AccountDiscriminator, Discriminator},
|
||||||
|
};
|
||||||
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
|
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
|
||||||
@@ -18,7 +19,7 @@ pub struct Bus {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Discriminator for Bus {
|
impl Discriminator for Bus {
|
||||||
fn discriminator() -> super::AccountDiscriminator {
|
fn discriminator() -> AccountDiscriminator {
|
||||||
AccountDiscriminator::Bus
|
AccountDiscriminator::Bus
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,4 +24,3 @@ impl From<Hash> for KeccakHash {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl_to_bytes!(Hash);
|
impl_to_bytes!(Hash);
|
||||||
// impl_account_from_bytes!(Hash);
|
|
||||||
|
|||||||
@@ -5,18 +5,5 @@ mod treasury;
|
|||||||
|
|
||||||
pub use bus::*;
|
pub use bus::*;
|
||||||
pub use hash::*;
|
pub use hash::*;
|
||||||
use num_enum::{IntoPrimitive, TryFromPrimitive};
|
|
||||||
pub use proof::*;
|
pub use proof::*;
|
||||||
pub use treasury::*;
|
pub use treasury::*;
|
||||||
|
|
||||||
#[repr(u8)]
|
|
||||||
#[derive(Clone, Copy, Debug, Eq, PartialEq, IntoPrimitive, TryFromPrimitive)]
|
|
||||||
pub enum AccountDiscriminator {
|
|
||||||
Bus = 100,
|
|
||||||
Proof = 101,
|
|
||||||
Treasury = 102,
|
|
||||||
}
|
|
||||||
|
|
||||||
pub trait Discriminator {
|
|
||||||
fn discriminator() -> AccountDiscriminator;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
use bytemuck::{Pod, Zeroable};
|
use bytemuck::{Pod, Zeroable};
|
||||||
use solana_program::pubkey::Pubkey;
|
use solana_program::pubkey::Pubkey;
|
||||||
|
|
||||||
use crate::{impl_account_from_bytes, impl_to_bytes};
|
use crate::{
|
||||||
|
impl_account_from_bytes, impl_to_bytes,
|
||||||
use super::{AccountDiscriminator, Discriminator, Hash};
|
state::Hash,
|
||||||
|
utils::{AccountDiscriminator, Discriminator},
|
||||||
|
};
|
||||||
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
|
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
|
||||||
@@ -28,7 +30,7 @@ pub struct Proof {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Discriminator for Proof {
|
impl Discriminator for Proof {
|
||||||
fn discriminator() -> super::AccountDiscriminator {
|
fn discriminator() -> AccountDiscriminator {
|
||||||
AccountDiscriminator::Proof
|
AccountDiscriminator::Proof
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
use bytemuck::{Pod, Zeroable};
|
use bytemuck::{Pod, Zeroable};
|
||||||
use solana_program::pubkey::Pubkey;
|
use solana_program::pubkey::Pubkey;
|
||||||
|
|
||||||
use crate::{impl_account_from_bytes, impl_to_bytes};
|
use crate::{
|
||||||
|
impl_account_from_bytes, impl_to_bytes,
|
||||||
use super::{AccountDiscriminator, Discriminator, Hash};
|
state::Hash,
|
||||||
|
utils::{AccountDiscriminator, Discriminator},
|
||||||
|
};
|
||||||
|
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
|
#[derive(Clone, Copy, Debug, PartialEq, Pod, Zeroable)]
|
||||||
@@ -28,7 +30,7 @@ pub struct Treasury {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Discriminator for Treasury {
|
impl Discriminator for Treasury {
|
||||||
fn discriminator() -> super::AccountDiscriminator {
|
fn discriminator() -> AccountDiscriminator {
|
||||||
AccountDiscriminator::Treasury
|
AccountDiscriminator::Treasury
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
13
src/utils.rs
13
src/utils.rs
@@ -1,3 +1,4 @@
|
|||||||
|
use num_enum::{IntoPrimitive, TryFromPrimitive};
|
||||||
use solana_program::{
|
use solana_program::{
|
||||||
account_info::AccountInfo, entrypoint::ProgramResult, pubkey::Pubkey, rent::Rent,
|
account_info::AccountInfo, entrypoint::ProgramResult, pubkey::Pubkey, rent::Rent,
|
||||||
sysvar::Sysvar,
|
sysvar::Sysvar,
|
||||||
@@ -32,6 +33,18 @@ pub fn create_pda<'a, 'info>(
|
|||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[repr(u8)]
|
||||||
|
#[derive(Clone, Copy, Debug, Eq, PartialEq, IntoPrimitive, TryFromPrimitive)]
|
||||||
|
pub enum AccountDiscriminator {
|
||||||
|
Bus = 100,
|
||||||
|
Proof = 101,
|
||||||
|
Treasury = 102,
|
||||||
|
}
|
||||||
|
|
||||||
|
pub trait Discriminator {
|
||||||
|
fn discriminator() -> AccountDiscriminator;
|
||||||
|
}
|
||||||
|
|
||||||
#[macro_export]
|
#[macro_export]
|
||||||
macro_rules! impl_to_bytes {
|
macro_rules! impl_to_bytes {
|
||||||
($struct_name:ident) => {
|
($struct_name:ident) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user