nsIRDFResource *aSource = (nsIRDFResource *) JS_GetPrivate(cx, jsaSource); nsIRDFResource *aProperty = (nsIRDFResource *) JS_GetPrivate(cx, jsaProperty); nsIRDFNode *aTarget = (nsIRDFNode *) JS_GetPrivate(cx, jsaTarget);
nsIRDFDataSource_HasAssertion(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval){  nsIRDFDataSource *priv = (nsIRDFDataSource *)JS_GetPrivate(cx, obj);  if (!priv)    return JS_TRUE;  nsIRDFResource *aSource;  nsIRDFResource *aProperty;  nsIRDFNode *aTarget;  PRBool aTruthValue;  if (!JS_ConvertArguments(cx, argc, argv, "ooob", &aSource, &aProperty, &aTarget, &aTruthValue))    return JS_FALSE;  PRBool retval;  nsresult rv = priv->HasAssertion(aSource, aProperty, aTarget, aTruthValue, &retval);  if (NS_FAILED(rv)) {    JS_ReportError(cx, XXXnsresult2string(rv));    return JS_FALSE;  }  *rval = BOOLEAN_TO_JSVAL(retval);  return JS_TRUE;}