Skip to main content

load_linked_bytecode

Function load_linked_bytecode 

Source
pub async fn load_linked_bytecode<P: Provider>(
    provider: &P,
    artifacts: &Artifacts,
    file: &str,
    contract: &str,
    sender: Option<Address>,
) -> Result<Bytes>
Expand description

The creation bytecode of <file>.sol:<contract> with every library it links deployed and substituted: Libraries::deploy over the one contract, then Libraries::link. Mirrors what forge does automatically, except that a library already at its address is reused rather than deployed again. For artifacts with no linkReferences this behaves like Artifacts::bytecode_named and sends nothing.

The bb-generated UltraHonk verifiers are what goes through here: each links RelationsLib and ZKTranscriptLib, and deploy_honk_verifier is the call that links and deploys one.