COR_PRF_FUNCTION_ARGUMENT_INFO Structure

Represents a function's arguments, in left-to-right order.

typedef struct _COR_PRF_FUNCTION_ARGUMENT_INFO {
    ULONG numRanges;
    ULONG totalArgumentSize;
    COR_PRF_FUNCTION_ARGUMENT_RANGE ranges[1];
} COR_PRF_FUNCTION_ARGUMENT_INFO;

Members

Member Description

numRanges

The number of blocks of arguments. That is, this value is the number of COR_PRF_FUNCTION_ARGUMENT_RANGE Structure structures in the ranges array.

totalArgumentSize

The total size of all arguments. In other words, this value is the sum of the argument lengths.

ranges

An array of COR_PRF_FUNCTION_ARGUMENT_RANGE Structure structures, each of which represents one block of function arguments.

Remarks

A function may have many arguments. Those arguments might not be stored contiguously in memory. You might have a block of three arguments in one place, a block of two arguments in another place, and a final block of one argument in a different place. These arguments are all for the same function; they're just stored in different places.

The COR_PRF_FUNCTION_ARGUMENT_INFO structure represents all the arguments of a single function. It uses an array to reference all the blocks of function arguments. So, for a single function, you have a single COR_PRF_FUNCTION_ARGUMENT_INFO structure, which references multiple COR_PRF_FUNCTION_ARGUMENT_RANGE Structure structures, each of which points to one or more function arguments.

Arguments that are stored in registers are spilled into memory to build the structures.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: CorProf.idl

Library: CorGuids.lib

.NET Framework Version: 2.0

See Also

Other Resources

Profiling Structures