Function encode_method_signature
pub fn encode_method_signature(signature: &SignatureMethod) -> Result<Vec<u8>>Expand description
Encodes a method signature into binary format according to ECMA-335.
Method signatures encode:
- Calling convention byte
- Parameter count (compressed integer)
- Return type (using TypeSignatureEncoder)
- Parameter types (using TypeSignatureEncoder for each)
§Arguments
signature- The method signature to encode
§Returns
A vector of bytes representing the encoded method signature.
§Errors
Returns an error if encoding any parameter or return type fails, typically due to:
- Invalid type signature structures
- Unsupported type encodings
- Issues with type reference tokens
§Examples
use dotscope::metadata::signatures::*;
let signature = MethodSignatureBuilder::new()
.calling_convention_default()
.returns(TypeSignature::Void)
.param(TypeSignature::I4)
.build()?;
let encoded = encode_method_signature(&signature)?;