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
| Tili | Kirjoitettava | Allekirjoittaja | Kuvaus |
|---|---|---|---|
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_program | System Program | ||
event_authority | Tapahtumavaltuuden PDA | ||
private_channel_escrow_program | Escrow-ohjelma |
Parametrit
| Parametri | Tyyppi | Kuvaus |
|---|---|---|
bump | u8 | bump seed instanssin PDA:lle. Valinnainen: Async-asiakas johtaa sen automaattisesti, jos jätetään pois |
IDL sisältää
discriminator: u8-argumentin (arvo0), jonka generoitu asiakas asettaa automaattisesti eikä sitä tule välittää manuaalisesti.
Tärkeät huomiot
instance_seedon kertakäyttöinen keypair, jota käytetään ainoastaanInstance-PDA:n johtamiseen. Sen pubkey toimii seed-arvona; keypair-paria itsessään ei tallenneta eikä käytetä uudelleen.- Käytä
getCreateInstanceInstructionAsync-funktiota; se johtaa automaattisestibump- jainstance-arvotinstance_seed-arvosta, kun niitä ei ole annettu. Anna omabump-arvo vain, jos olet jo laskenut sen seuraavasti:Pubkey::find_program_address(&[b"instance", instance_seed_pubkey.as_ref()], &PROGRAM_ID) - Lähettää tapahtuman
EmitEventCPI:n kautta
Is this page helpful?