Skip to main content

method_id

Function method_id 

Source
pub const fn method_id(name: &str) -> u64
Expand description

Stable automatic endpoint identity from the exact exported IC method name.

FNV-1a-64 over UTF-8 ic-wire:method: followed by the name, using offset basis 14695981039346656037, prime 1099511628211 and wrapping u64 arithmetic. This is a routing identity, not authentication or a cryptographic schema fingerprint. Consumers retain duplicate-ID admission; 64-bit hashes can collide.

The endpoint macro evaluates this at compile time. Rust module paths, type spelling and execution mode do not participate. Renaming the exported method changes its ID; name = "stable-name" decouples it from a Rust function rename. Explicit IDs remain valid. Replacing one with this default requires coordinated clients unless the values match. The frame format itself remains unchanged.