normalizeSignature
Normalizes a function or event signature by removing parameter names and unnecessary whitespace
Loading...
Normalizes a function or event signature by removing parameter names and unnecessary whitespace
Normalizes a function or event signature by removing parameter names, indexed keywords, and unnecessary whitespace, keeping only the types.
import "github.com/ChefBingbong/viem-go/utils/hash"import "github.com/ChefBingbong/viem-go/utils/hash"
// Normalize function signaturesig, _ := hash.NormalizeSignature("function transfer(address to, uint256 amount)")// "transfer(address,uint256)"
// Normalize event signaturesig, _ = hash.NormalizeSignature("event Transfer(address indexed from, address indexed to, uint256 amount)")// "Transfer(address,address,uint256)"
// Normalize without function/event keywordsig, _ = hash.NormalizeSignature("ownerOf(uint256 tokenId)")// "ownerOf(uint256)"(string, error)The normalized signature string with parameter names and whitespace removed.
stringThe function or event signature to normalize.
sig, _ := hash.NormalizeSignature("function transfer(address to, uint256 amount)")// "transfer(address,uint256)"
sig, _ = hash.NormalizeSignature("event Transfer(address indexed from, address indexed to, uint256 amount)")// "Transfer(address,address,uint256)"function and event keywordsindexed keywords from event parametersToFunctionSelector, ToEventSelector, and other hash functions