CreateInstance

Luo Instance PDA:n, joka ankkuroi escrow'n. Tätä on kutsuttava ennen mitään muuta toimintoa.

PDA Seeds

instance -> ["instance", instance_seed: Pubkey]
allowed_mint -> ["allowed_mint", instance_pda: Pubkey, mint: Pubkey]
operator -> ["operator", instance_pda: Pubkey, operator: Pubkey]
event_authority -> ["event_authority"]

Tilit

TiliKirjoitettavaAllekirjoittajaKuvaus
payer✓✓Maksun ja rent-maksun maksaja
admin✓Instanssin alkuperäinen ylläpitäjä
instance_seed✓Kertakäyttöinen keypair, jota käytetään ainoastaan PDA-johdannaiseen; sen pubkey toimii seed-arvona
instance✓Instance PDA (johdettu ["instance", instance_seed.pubkey]-arvoista)
system_programSystem Program
event_authorityTapahtumavaltuuden PDA
private_channel_escrow_programEscrow-ohjelma

Parametrit

ParametriTyyppiKuvaus
bumpu8bump seed instanssin PDA:lle. Valinnainen: Async-asiakas johtaa sen automaattisesti, jos jätetään pois

IDL sisältää discriminator: u8 -argumentin (arvo 0), jonka generoitu asiakas asettaa automaattisesti eikä sitä tule välittää manuaalisesti.

Tärkeät huomiot

  • instance_seed on kertakäyttöinen keypair, jota käytetään ainoastaan Instance-PDA:n johtamiseen. Sen pubkey toimii seed-arvona; keypair-paria itsessään ei tallenneta eikä käytetä uudelleen.
  • Käytä getCreateInstanceInstructionAsync-funktiota; se johtaa automaattisesti bump- ja instance-arvot instance_seed-arvosta, kun niitä ei ole annettu. Anna oma bump-arvo vain, jos olet jo laskenut sen seuraavasti: Pubkey::find_program_address(&[b"instance", instance_seed_pubkey.as_ref()], &PROGRAM_ID)
  • Lähettää tapahtuman EmitEvent CPI:n kautta

Is this page helpful?

Sisällysluettelo

Muokkaa sivua
© 2026 Solana Foundation. Kaikki oikeudet pidätetään.