mango-v4/programs/mango-v4/src/instructions/create_group.rs

31 lines
703 B
Rust
Raw Normal View History

2022-02-22 00:49:02 -08:00
use anchor_lang::prelude::*;
use crate::error::*;
use crate::state::*;
#[derive(Accounts)]
pub struct CreateGroup<'info> {
#[account(
init,
seeds = [b"group".as_ref(), owner.key().as_ref()],
bump,
payer = payer,
space = 8 + std::mem::size_of::<MangoGroup>(),
2022-02-22 00:49:02 -08:00
)]
pub group: AccountLoader<'info, MangoGroup>,
pub owner: Signer<'info>,
#[account(mut)]
pub payer: Signer<'info>,
pub system_program: Program<'info, System>,
pub rent: Sysvar<'info, Rent>,
}
pub fn create_group(ctx: Context<CreateGroup>) -> Result<()> {
2022-02-22 01:09:09 -08:00
let mut group = ctx.accounts.group.load_init()?;
group.owner = ctx.accounts.owner.key();
2022-02-22 00:49:02 -08:00
Ok(())
}