Esempio n. 1
0
static void 
add_double(void *opaque, void *parent, const char *name, double v)
{
  jsdouble *d = JS_NewDouble(opaque, v);
  if(d != NULL)
    add_item(opaque, parent, name, DOUBLE_TO_JSVAL(d));
}
Esempio n. 2
0
void
js_set_prop_dbl(JSContext *cx, JSObject *o, const char *prop, double v)
{
  jsdouble *d = JS_NewDouble(cx, v);
  if(d != NULL)
    js_set_prop_jsval(cx, o, prop, DOUBLE_TO_JSVAL(d));
}
Esempio n. 3
0
File: js.c Progetto: Daisho/showtime
static JSBool 
js_time(JSContext *cx, JSObject *obj,
	uintN argc, jsval *argv, jsval *rval)
{
  time_t t;
  time(&t);
  jsdouble *d = JS_NewDouble(cx, t);
  *rval = DOUBLE_TO_JSVAL(d);
  return JS_TRUE;
}
//---------------------------------------------------------------------------
jsval CONCEPT_TO_JS(JSContext *cx, void *member) {
    INTEGER type     = 0;
    char    *szValue = 0;
    NUMBER  nValue   = 0;
    jsval   ret      = 0;

    InvokePtr(INVOKE_GET_VARIABLE, member, &type, &szValue, &nValue);
    switch (type) {
        case VARIABLE_NUMBER:
            ret = DOUBLE_TO_JSVAL(JS_NewDouble(cx, nValue));
            break;

        case VARIABLE_STRING:
            ret = STRING_TO_JSVAL(JS_NewString(cx, szValue, (int)nValue));
            break;

        default:
            ret = DOUBLE_TO_JSVAL(JS_NewDouble(cx, 1.0));
    }
    return ret;
}
Esempio n. 5
0
JS_XDRDouble(JSXDRState *xdr, jsdouble **dpp)
{
    jsdouble d = (xdr->mode == JSXDR_ENCODE) ? **dpp : 0.0;
    if (!XDRDoubleValue(xdr, &d))
        return JS_FALSE;
    if (xdr->mode == JSXDR_DECODE) {
        *dpp = JS_NewDouble(xdr->cx, d);
        if (!*dpp)
            return JS_FALSE;
    }
    return JS_TRUE;
}
Esempio n. 6
0
static jsval
jsval_from_htsmsgfield(JSContext *cx, htsmsg_field_t *f)
{
  jsdouble *d;
  switch(f->hmf_type) {
  case HMF_STR:
    return STRING_TO_JSVAL(JS_NewStringCopyZ(cx, f->hmf_str));

  case HMF_S64:
    if(f->hmf_s64 <= INT32_MAX && f->hmf_s64 >= INT32_MIN &&
       INT_FITS_IN_JSVAL(f->hmf_s64))
      return INT_TO_JSVAL(f->hmf_s64);
    if((d = JS_NewDouble(cx, f->hmf_s64)) != NULL)
      return DOUBLE_TO_JSVAL(d);
    break;

  case HMF_DBL:
    if((d = JS_NewDouble(cx, f->hmf_dbl)) != NULL)
      return DOUBLE_TO_JSVAL(d);
    break;
  }
  return JSVAL_NULL;
}
Esempio n. 7
0
void
js_set_prop_int(JSContext *cx, JSObject *o, const char *prop, int v)
{
  jsval val;
  if(v <= INT32_MAX && v >= INT32_MIN && INT_FITS_IN_JSVAL(v))
    val = INT_TO_JSVAL(v);
  else {
    jsdouble *d = JS_NewDouble(cx, v);
    if(d == NULL)
      return;
    val = DOUBLE_TO_JSVAL(d);
  }
   js_set_prop_jsval(cx, o, prop, val);
}
Esempio n. 8
0
JS_XDRDouble(JSXDRState *xdr, jsdouble **dp)
{
    jsdpun u;

    if (xdr->mode == JSXDR_ENCODE)
        u.d = **dp;
    if (!JS_XDRUint32(xdr, &u.s.lo) || !JS_XDRUint32(xdr, &u.s.hi))
        return JS_FALSE;
    if (xdr->mode == JSXDR_DECODE) {
        *dp = JS_NewDouble(xdr->cx, u.d);
        if (!*dp)
            return JS_FALSE;
    }
    return JS_TRUE;
}