CreateInstance

Emanet hesabını sabitleyen Instance PDA'sını oluşturur. Diğer herhangi bir işlemden önce çağrılmalıdır.

PDA seed'leri

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

Hesaplar

HesapYazılabilirİmzalayanAçıklama
payer✓✓Ücret ödeyen ve rent ödeyen
admin✓Instance'ın ilk yöneticisi
instance_seed✓Yalnızca PDA türetme için kullanılan tek kullanımlık keypair; pubkey'i seed olur
instance✓Instance PDA (["instance", instance_seed.pubkey] değerinden türetilir)
system_programSystem Program
event_authorityOlay yetkisi PDA'sı
private_channel_escrow_programEmanet Programı

Parametreler

ParametreTürAçıklama
bumpu8Instance PDA için bump seed. İsteğe bağlı: belirtilmezse Async istemcisi otomatik olarak türetir

IDL, otomatik olarak ayarlanan bir discriminator: u8 argümanı (değer 0) içerir ve oluşturulan istemci tarafından otomatik olarak ayarlanır; manuel olarak geçirilmemelidir.

Önemli Notlar

  • instance_seed, yalnızca Instance PDA'sını türetmek için kullanılan tek kullanımlık bir keypair'dir. pubkey'i seed olur; keypair'in kendisi saklanmaz veya yeniden kullanılmaz.
  • getCreateInstanceInstructionAsync kullanın; sağlanmadığında instance_seed'den bump ve instance'ı otomatik olarak türetir. Kendi bump değerinizi yalnızca Pubkey::find_program_address(&[b"instance", instance_seed_pubkey.as_ref()], &PROGRAM_ID) aracılığıyla önceden hesapladıysanız geçirin
  • EmitEvent CPI aracılığıyla bir olay yayar

Is this page helpful?

İçindekiler

Sayfayı Düzenle
© 2026 Solana Vakfı. Tüm hakları saklıdır.