> Aztec.nr API reference, v6.0.0 (mainnet and testnet). Index: https://docs.aztec.network/aztec-nr-api/mainnet/llms.txt

# Struct CallSelf

Module: `contract_instance_registry_interface::ContractInstanceRegistry`

```rust
pub struct CallSelf<Context> {
    pub address: AztecAddress,
    pub context: Context,
}
```

## Fields

```rust
address: AztecAddress
```

```rust
context: Context
```

## Implementations

```rust
impl CallSelf<&mut PrivateContext>
```

```rust
pub fn publish_for_public_execution(
    self,
    salt: Field,
    contract_class_id: ContractClassId,
    initialization_hash: Field,
    immutables_hash: Field,
    public_keys: PublicKeys,
    universal_deploy: bool,
)
```

```rust
impl CallSelf<PublicContext>
```

```rust
pub fn update(self, new_contract_class_id: ContractClassId)
```

```rust
pub fn set_update_delay(self, new_update_delay: u64)
```
