CreateInstance

Δημιουργεί το Instance PDA που αγκυρώνει το escrow. Πρέπει να κληθεί πριν από οποιαδήποτε άλλη λειτουργία.

Seeds PDA

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"]

Λογαριασμοί

ΛογαριασμόςΕγγράψιμοΥπογράφωνΠεριγραφή
payer✓✓Πληρωτής τελών και rent
admin✓Αρχικός διαχειριστής του instance
instance_seed✓Throwaway keypair που χρησιμοποιείται μόνο για την παραγωγή PDA· το pubkey του γίνεται το seed
instance✓Instance PDA (παράγεται από ["instance", instance_seed.pubkey])
system_programSystem Program
event_authorityPDA αρχής συμβάντων
private_channel_escrow_programΠρόγραμμα Escrow

Παράμετροι

ΠαράμετροςΤύποςΠεριγραφή
bumpu8bump seed για το instance PDA. Προαιρετικό: ο Async client το παράγει αυτόματα αν παραλειφθεί

Το IDL περιέχει ένα όρισμα discriminator: u8 (τιμή 0) που ορίζεται αυτόματα από τον παραγόμενο client και δεν πρέπει να περνιέται χειροκίνητα.

Σημαντικές Σημειώσεις

  • Το instance_seed είναι ένα throwaway keypair, που χρησιμοποιείται μόνο για την παραγωγή του Instance PDA. Το pubkey του γίνεται το seed· το ίδιο το keypair δεν αποθηκεύεται ούτε επαναχρησιμοποιείται.
  • Χρησιμοποιήστε το getCreateInstanceInstructionAsync· παράγει αυτόματα το bump και το instance από το instance_seed όταν δεν παρέχονται. Περάστε το δικό σας bump μόνο αν το έχετε ήδη υπολογίσει μέσω Pubkey::find_program_address(&[b"instance", instance_seed_pubkey.as_ref()], &PROGRAM_ID)
  • Εκπέμπει ένα συμβάν μέσω EmitEvent CPI

Is this page helpful?

Πίνακας Περιεχομένων

Επεξεργασία Σελίδας
© 2026 Ίδρυμα Solana. Με επιφύλαξη παντός δικαιώματος.