+|**Miscellaneous**|**__log2** - Returns the log base 2 of a specified integer, rounded to the nearest lower integer.<br /><br />**__findNonNull** - Searches an array of pointers, returning the index of the first non-null element.<br />- Parameters: (1) Pointer to first element in array (void*), (2) Size of array (unsigned int).<br />- Return values: (1) 0-based index of first non-null element in array or -1 if not found.<br /><br />**DecodeHString** - Helper function to format the value of an HSTRING. Pops the HSTRING value off the stack, pushes the bytes of a StringInfo structure that the EE can use to tell where the string is located. This is only used internally by the EE; it is not available to the user to call directly.<br /><br />**DecodeWinRTRestrictedException** - Decodes a WinRT restricted exception to get the restricted description.<br />- Parameters: (1) characters of a null-terminated string representing the restricted reference string.<br />- Return value: Characters of a null-terminated string containing the actual error message to show.<br /><br />**DynamicCast** - Implements dynamic_cast.<br />- Parameters: (1) Pointer to object to cast.<br />- Data items: A CDynamicCastData object should be associated as a data item to the corresponding ExecuteIntrinsic() instruction. The data item encodes the type we are casting from and to, as well as whether or not we are evaluating a natvis expression (needed for diagnostics to break infinite recursion).<br />- Return value: (1) A pointer to the object, cast to the correct type, or NULL if the object being cast is not an instance of the correct type.<br /><br />**DynamicMemberLookup** - Helper function to get the value of a class member dynamically<br /><br />**GetEnvBlockLength** - Helper function to get length of an environment block, in characters. Used for $env.<br /><br />**Stdext_HashMap_Int_OperatorBracket_idx** - Operator[] for stdext::hash_map. Assumes default hash function with a key of 'int'. Returns the value. The intrinsic operator[] only supports retrieving existing items from the hashtable - it does not support inserting new items into the table, as that could involve unwanted complexity, such as memory allocation. However, operator[] may be used to modify the value associated with a key already in the table.<br />- Stack Parameters: (1) The address of the stdext::hash_map object, (2) The key into the table (int), (3) a HashMapPdb structure that specifies the field offsets of members that the function implementation needs to do the lookup. This is required because direct access to symbols is not available on the remote side.<br />- Return values: (1) If the key is in the table, the address of the value which corresponds to the key. Otherwise, NULL.<br /><br />**Std_UnorderedMap_Int_OperatorBracket_idx** - std::unordered_map works the same way as stdext::hash_map, except the hash function is different.<br /><br />**ConcurrencyArray_OperatorBracket_idx** // Concurrency::array<>::operator[index<>] and operator(index<>)<br /><br />**ConcurrencyArray_OperatorBracket_int** // Concurrency::array<>::operator(int, int, ...)<br /><br />**ConcurrencyArray_OperatorBracket_tidx** // Concurrency::array<>::operator[tiled_index<>] and operator(tiled_index<>)<br /><br />**ConcurrencyArrayView_OperatorBracket_idx** // Concurrency::array_view<>::operator[index<>] and operator(index<>)<br /><br />**ConcurrencyArrayView_OperatorBracket_int** // Concurrency::array_view<>::operator(int, int, ...)<br /><br />**ConcurrencyArrayView_OperatorBracket_tidx** // Concurrency::array_view<>::operator[tiled_index<>] and operator(tiled_index<>)<br /><br />**TreeTraverse_Init** - Initializes a new tree traversal. <br />- Stack Parameters: (1) Address of root node, (2) Hint for the maximum depth to use. Items at a depth beyond this are moved to a queue for later processing.<br />- Subroutine parameters: (1) node validity (optional).<br />- Return values: (1) Opaque sequence of bytes encoding the state of the tree traversal.<br /><br />**TreeTraverse_Next** - Retrieves nodes from a pending tree traversal.<br />- Stack Parameters: (1) Opaque byte array representing state of tree traversal, (2) Number of nodes to fetch.<br />- Subroutine parameters (must match call to TreeTraverse_Init()): (1) left child, (2) right child, (3) node validity (optional).<br />- Return values: (1) Number of nodes fetched (Note: pushed after the nodes, themselves, so it can be popped first). If fewer nodes were fetched than requested, this means the end of the tree. (2) For each node fetched, the address of the node. (3) Opaque sequence of bytes encoding the new state of the tree traversal<br /><br />**TreeTraverse_Skip** - Skips nodes in a pending tree traversal.<br />- Stack Parameters: (1) Opaque byte array representing state of tree traversal, (2) Number of nodes to skip.<br />- Subroutine parameters (must match on successive calls to Next() on the same enumerator): (1) left child, (2) right child, (3) node validity (optional).<br />- Return values: (1) Number of items actually skipped (might be less than what's requested), (2) Opaque sequence of bytes encoding the new state of the tree traversal|
0 commit comments