/* Try to convert a value to a float. The float case is already handled by the macro 'tonumber'.  */
int luaV_tonumber_(const TValue *obj, lua_Number *n)
/* Try to convert a value to a float. The float case is already handled by the macro 'tonumber'.  */
int luaV_tonumber_(const TValue *obj, lua_Number *n)
{
    *n = cast_num(ivalue(obj));
    return 1;
  }
  else if (l_strton(obj, &v)) {
    *n = nvalue(&v);
    return 1;
  }
  else
    return 0;
}