Skip to main content
Extracts the function selector (first 4 bytes) from calldata. The selector identifies which function to invoke in a smart contract.

Signature

Parameters

  • calldata - CallData instance to extract selector from

Returns

[4]u8 - 4-byte array containing function selector

Examples

Function Selectors

Function selector is first 4 bytes of keccak256(signature):

Common Selectors

Use Cases

Function Routing

Selector Matching

Transaction Filtering

Contract Interface Detection

Performance

Selector extraction is extremely fast (just array slice):

Selector Collisions

Different functions can have same selector (rare but possible):
Real collisions are virtually impossible but:
  • Always validate full function signature when security-critical
  • Use ABI decoding to verify parameter types
  • Don’t rely solely on selector for authentication

Zero-Copy Access

Direct byte access without allocation:
For immutability, copy selector: