internal static string ToStringIdOrIndex(Context cx, object id)
{
if (id is Number)
{
double d = System.Convert.ToDouble(((Number)id));
int index = (int)d;
if (index == d)
{
StoreIndexResult(cx, index);
return null;
}
return ToString(id);
}
else
{
string s;
if (id is string)
{
s = (string)id;
}
else
{
s = ToString(id);
}
long indexTest = IndexFromString(s);
if (indexTest >= 0)
{
StoreIndexResult(cx, (int)indexTest);
return null;
}
return s;
}
}