#[instruction]Expand description
This attribute is used to override the Mainstay defaults of program instructions.
§Arguments
-
discriminator: Override the default 8-byte discriminatorUsage:
discriminator = <CONST_EXPR>All constant expressions are supported.
Examples:
discriminator = 1(shortcut for[1])discriminator = [1, 2, 3, 4]discriminator = b"hi"discriminator = MY_DISCdiscriminator = get_disc(...)
§Example
ⓘ
use mainstay_lang::prelude::*;
declare_id!("CustomDiscriminator111111111111111111111111");
#[program]
pub mod custom_discriminator {
use super::*;
#[instruction(discriminator = [1, 2, 3, 4])]
pub fn my_ix(_ctx: Context<MyIx>) -> Result<()> {
Ok(())
}
}
#[derive(Accounts)]
pub struct MyIx<'info> {
pub signer: Signer<'info>,
}