toFunctionHash
Returns the full keccak256 hash of a function signature
Loading...
Returns the full keccak256 hash of a function signature
Returns the full keccak256 hash of a function signature. This is an alias for ToSignatureHash specifically for function definitions.
import "github.com/ChefBingbong/viem-go/utils/hash"import "github.com/ChefBingbong/viem-go/utils/hash"
// Get full function hashhash, _ := hash.ToFunctionHash("function transfer(address to, uint256 amount)")// "0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b"
// Get hash as byteshashBytes, _ := hash.ToFunctionHashBytes("function transfer(address,uint256)")// []byte{0xa9, 0x05, 0x9c, ...}(string, error) for ToFunctionHash, ([]byte, error) for ToFunctionHashBytesThe full 32-byte keccak256 hash of the function signature. ToFunctionHash returns a hex string with 0x prefix, ToFunctionHashBytes returns raw bytes.
stringThe function definition string.
hash, _ := hash.ToFunctionHash("function transfer(address,uint256)")// "0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b"Returns the full hash as a hex string:
hash, _ := hash.ToFunctionHash("function transfer(address,uint256)")
// "0xa9059cbb2ab09eb219583f4a59a5d0623ade346d962bcd4e46b11da047c9049b"
Returns the full hash as raw 32 bytes:
hashBytes, _ := hash.ToFunctionHashBytes("function transfer(address,uint256)")
// []byte{0xa9, 0x05, 0x9c, ...}
ToFunctionSelector which returns only the first 4 bytesToSignatureHash for function definitions