arrayobject helper commands

getValueFromKey and getKeyFromValue.
both look to the left or right hand entry for the other one
example:
%array.add("startPos","0 0 0 ");
echo(">".%array.getValueFromKey("startPos"));
> 0 0 0
This commit is contained in:
AzaezelX 2024-01-10 16:20:08 -06:00
parent 78b56688d3
commit 30e67694e8

View file

@ -600,6 +600,22 @@ DefineEngineMethod( ArrayObject, getIndexFromKey, S32, ( const char* key ),,
return object->getIndexFromKey( key );
}
DefineEngineMethod(ArrayObject, getValueFromKey, const char*, (const char* key), ,
"Search the array from the current position for the Key "
"@param value Array key to search for\n"
"@return Value of the first element found, or -1 if none\n")
{
return object->getValueFromIndex(object->getIndexFromKey(key)).c_str();
}
DefineEngineMethod(ArrayObject, getKeyFromValue, const char*, (const char* key), ,
"Search the array from the current position for the Value "
"@param value Array key to search for\n"
"@return Key of the first element found, or -1 if none\n")
{
return object->getKeyFromIndex(object->getIndexFromValue(key)).c_str();
}
DefineEngineMethod( ArrayObject, getValue, const char*, ( S32 index ),,
"Get the value of the array element at the submitted index.\n"
"@param index 0-based index of the array element to get\n"