asmjit::FuncSignature Struct Reference

Function signature.

Contains information about function return type, count of arguments and their TypeIds. Function signature is a low level structure which doesn't contain platform specific or calling convention specific information.

Public Members

Public Types

Member Functions

Initializtion & Reset
Accessors

Member Enumeration Documentation

anonymous enum : uint8_t

ConstantDescription
kNoVarArgs 

Doesn't have variable number of arguments (...).

Member Function Documentation

void FuncSignature::init(uint32_t ccId, uint32_t vaIndex, uint32_t ret, const uint8_t* args, uint32_t argCount)noexcept

Initializes the function signature.

uint32_t FuncSignature::callConv() constnoexcept

Returns the calling convention.

void FuncSignature::setCallConv(uint32_t ccId)noexcept

Sets the calling convention to ccId;.

bool FuncSignature::hasVarArgs() constnoexcept

Tests whether the function has variable number of arguments (...).

uint32_t FuncSignature::vaIndex() constnoexcept

Returns the variable arguments (...) index, kNoVarArgs if none.

void FuncSignature::setVaIndex(uint32_t index)noexcept

Sets the variable arguments (...) index to index.

void FuncSignature::resetVaIndex()noexcept

Resets the variable arguments index (making it a non-va function).

uint32_t FuncSignature::argCount() constnoexcept

Returns the number of function arguments.

uint32_t FuncSignature::ret() constnoexcept

Returns the return value type.

uint32_t FuncSignature::arg(uint32_t i) constnoexcept

Returns the type of the argument at index i.

const uint8_t* FuncSignature::args() constnoexcept

Returns the array of function arguments' types.

Member Data Documentation

uint8_t FuncSignature::_callConv

Calling convention id.

uint8_t FuncSignature::_argCount

Count of arguments.

uint8_t FuncSignature::_vaIndex

Index of a first VA or kNoVarArgs.

uint8_t FuncSignature::_ret

Return value TypeId.

const uint8_t* FuncSignature::_args

Function arguments TypeIds.