about summary refs log tree commit diff stats
path: root/lib/monoucha0/monoucha/javascript.nim
diff options
context:
space:
mode:
Diffstat (limited to 'lib/monoucha0/monoucha/javascript.nim')
-rw-r--r--lib/monoucha0/monoucha/javascript.nim16
1 files changed, 9 insertions, 7 deletions
diff --git a/lib/monoucha0/monoucha/javascript.nim b/lib/monoucha0/monoucha/javascript.nim
index 2a811ce6..14cd95eb 100644
--- a/lib/monoucha0/monoucha/javascript.nim
+++ b/lib/monoucha0/monoucha/javascript.nim
@@ -332,19 +332,19 @@ func newJSClass*(ctx: JSContext; cdef: JSClassDefConst; nimt: pointer;
   if cdef.exotic != nil and cdef.exotic.get_own_property != nil:
     let val = JS_DupValue(ctx, ctxOpaque.valRefs[jsvArrayPrototypeValues])
     let itSym = ctxOpaque.symRefs[jsyIterator]
-    ctx.defineProperty(proto, itSym, val)
+    doAssert ctx.defineProperty(proto, itSym, val) == dprSuccess
   let news = JS_NewAtomString(ctx, cdef.class_name)
   doAssert not JS_IsException(news)
-  ctx.definePropertyC(proto, ctxOpaque.symRefs[jsyToStringTag],
-    JS_DupValue(ctx, news))
+  doAssert ctx.definePropertyC(proto, ctxOpaque.symRefs[jsyToStringTag],
+    JS_DupValue(ctx, news)) == dprSuccess
   JS_SetClassProto(ctx, result, proto)
   ctx.addClassUnforgeable(proto, result, parent, unforgeable)
   if asglobal:
     let global = ctxOpaque.global
     assert ctxOpaque.gclass == 0
     ctxOpaque.gclass = result
-    ctx.definePropertyC(global, ctxOpaque.symRefs[jsyToStringTag],
-      JS_DupValue(ctx, news))
+    doAssert ctx.definePropertyC(global, ctxOpaque.symRefs[jsyToStringTag],
+      JS_DupValue(ctx, news)) == dprSuccess
     if JS_SetPrototype(ctx, global, proto) != 1:
       raise newException(Defect, "Failed to set global prototype: " &
         $cdef.class_name)
@@ -370,9 +370,11 @@ func newJSClass*(ctx: JSContext; cdef: JSClassDefConst; nimt: pointer;
   ctxOpaque.ctors[result] = JS_DupValue(ctx, jctor)
   if not nointerface:
     if JS_IsNull(namespace):
-      ctx.definePropertyCW(ctxOpaque.global, $cdef.class_name, jctor)
+      doAssert ctx.definePropertyCW(ctxOpaque.global, $cdef.class_name,
+        jctor) == dprSuccess
     else:
-      ctx.definePropertyCW(namespace, $cdef.class_name, jctor)
+      doAssert ctx.definePropertyCW(namespace, $cdef.class_name,
+        jctor) == dprSuccess
   else:
     JS_FreeValue(ctx, jctor)