about summary refs log tree commit diff stats
path: root/src/bindings
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2024-04-16 15:08:44 +0200
committerbptato <nincsnevem662@gmail.com>2024-04-17 23:19:09 +0200
commit66b9574b165be62e76c7397cf0eaa8d229d42675 (patch)
treeadb8a9719cc70f2b577706aaa4e30bb0d5d629a6 /src/bindings
parentd86f1939204eee771a30f47e4cbe71fd8d9a4f5f (diff)
downloadchawan-66b9574b165be62e76c7397cf0eaa8d229d42675.tar.gz
Update code style
* separate params with ; (semicolon) instead of , (colon)
* reduce screaming snake case use
* wrap long lines
Diffstat (limited to 'src/bindings')
-rw-r--r--src/bindings/constcharp.nim2
-rw-r--r--src/bindings/libregexp.nim8
-rw-r--r--src/bindings/libunicode.nim15
-rw-r--r--src/bindings/quickjs.nim361
-rw-r--r--src/bindings/termcap.nim9
-rw-r--r--src/bindings/zlib.nim14
6 files changed, 224 insertions, 185 deletions
diff --git a/src/bindings/constcharp.nim b/src/bindings/constcharp.nim
index 057b8acb..f1753147 100644
--- a/src/bindings/constcharp.nim
+++ b/src/bindings/constcharp.nim
@@ -2,5 +2,5 @@ type
   cstringConstImpl {.importc: "const char*".} = cstring
   cstringConst* = distinct cstringConstImpl
 
-proc `[]`*(s: cstringConst, i: int): char = cstring(s)[i]
+proc `[]`*(s: cstringConst; i: int): char = cstring(s)[i]
 proc `$`*(s: cstringConst): string {.borrow.}
diff --git a/src/bindings/libregexp.nim b/src/bindings/libregexp.nim
index 7f7b37cf..fe603908 100644
--- a/src/bindings/libregexp.nim
+++ b/src/bindings/libregexp.nim
@@ -18,11 +18,11 @@ func toLREFlags*(flags: cint): LREFlags =
 {.passc: "-Ilib/".}
 
 {.push header: "quickjs/libregexp.h", importc.}
-proc lre_compile*(plen: ptr cint, error_msg: cstring, error_msg_size: cint,
-  buf: cstring, buf_len: csize_t, re_flags: cint, opaque: pointer): ptr uint8
+proc lre_compile*(plen: ptr cint; error_msg: cstring; error_msg_size: cint;
+  buf: cstring; buf_len: csize_t; re_flags: cint; opaque: pointer): ptr uint8
 
-proc lre_exec*(capture: ptr ptr uint8, bc_buf: ptr uint8, cbuf: ptr uint8,
-  cindex: cint, clen: cint, cbuf_type: cint, opaque: pointer): cint
+proc lre_exec*(capture: ptr ptr uint8; bc_buf, cbuf: ptr uint8;
+  cindex, clen, cbuf_type: cint; opaque: pointer): cint
 
 proc lre_get_capture_count*(bc_buf: ptr uint8): cint
 
diff --git a/src/bindings/libunicode.nim b/src/bindings/libunicode.nim
index cb041e50..f501ae3f 100644
--- a/src/bindings/libunicode.nim
+++ b/src/bindings/libunicode.nim
@@ -1,5 +1,5 @@
 type
-  DynBufReallocFunc = proc(opaque: pointer, p: pointer, size: csize_t): pointer {.cdecl.}
+  DynBufReallocFunc = proc(opaque, p: pointer; size: csize_t): pointer {.cdecl.}
 
   CharRange* = object
     len*: cint # in points, always even
@@ -15,14 +15,15 @@ type
 
 {.push header: "quickjs/libunicode.h", importc.}
 
-proc cr_init*(cr: ptr CharRange, mem_opaque: pointer,
-              realloc_func: DynBufReallocFunc) {.importc.}
+proc cr_init*(cr: ptr CharRange; mem_opaque: pointer;
+  realloc_func: DynBufReallocFunc) {.importc.}
 
 proc cr_free*(cr: ptr CharRange) {.importc.}
 
-proc unicode_normalize*(pdst: ptr ptr uint32, src: ptr uint32, src_len: cint,
-                        n_type: UnicodeNormalizationEnum, opaque: pointer,
-                        realloc_func: DynBufReallocFunc): cint {.importc.}
+proc unicode_normalize*(pdst: ptr ptr uint32; src: ptr uint32; src_len: cint;
+  n_type: UnicodeNormalizationEnum; opaque: pointer;
+  realloc_func: DynBufReallocFunc): cint {.importc.}
 
-proc unicode_general_category*(cr: ptr CharRange, gc_name: cstring): cint {.importc.}
+proc unicode_general_category*(cr: ptr CharRange; gc_name: cstring): cint
+  {.importc.}
 {.pop.}
diff --git a/src/bindings/quickjs.nim b/src/bindings/quickjs.nim
index df4a6868..622cc253 100644
--- a/src/bindings/quickjs.nim
+++ b/src/bindings/quickjs.nim
@@ -77,25 +77,31 @@ type
   JSRuntime* = ptr JSRuntimeT
   JSContext* = ptr JSContextT
   JSModuleDef* = ptr JSModuleDefT
-  JSCFunction* = proc(ctx: JSContext, this_val: JSValue, argc: cint,
+  JSCFunction* = proc(ctx: JSContext; this_val: JSValue; argc: cint;
       argv: ptr UncheckedArray[JSValue]): JSValue {.cdecl.}
-  JSCFunctionData* = proc(ctx: JSContext, this_val: JSValue, argc: cint, argv: ptr JSValue, magic: cint, func_data: ptr JSValue): JSValue {.cdecl.}
-  JSGetterFunction* = proc(ctx: JSContext, this_val: JSValue): JSValue {.cdecl.}
-  JSSetterFunction* = proc(ctx: JSContext, this_val: JSValue, val: JSValue): JSValue {.cdecl.}
-  JSGetterMagicFunction* = proc(ctx: JSContext, this_val: JSValue, magic: cint): JSValue {.cdecl.}
-  JSSetterMagicFunction* = proc(ctx: JSContext, this_val: JSValue, val: JSValue, magic: cint): JSValue {.cdecl.}
-  JSInterruptHandler* = proc(rt: JSRuntime, opaque: pointer): cint {.cdecl.}
+  JSCFunctionData* = proc(ctx: JSContext; this_val: JSValue; argc: cint;
+    argv: ptr JSValue; magic: cint; func_data: ptr JSValue): JSValue {.cdecl.}
+  JSGetterFunction* = proc(ctx: JSContext; this_val: JSValue): JSValue {.cdecl.}
+  JSSetterFunction* = proc(ctx: JSContext; this_val, val: JSValue):
+    JSValue {.cdecl.}
+  JSGetterMagicFunction* = proc(ctx: JSContext; this_val: JSValue; magic: cint):
+    JSValue {.cdecl.}
+  JSSetterMagicFunction* = proc(ctx: JSContext; this_val, val: JSValue;
+    magic: cint): JSValue {.cdecl.}
+  JSInterruptHandler* = proc(rt: JSRuntime; opaque: pointer): cint {.cdecl.}
   JSClassID* = uint32
   JSAtom* = uint32
-  JSClassFinalizer* = proc(rt: JSRuntime, val: JSValue) {.cdecl.}
-  JSClassCheckDestroy* = proc(rt: JSRuntime, val: JSValue): JS_BOOL {.cdecl.}
-  JSClassGCMark* = proc(rt: JSRuntime, val: JSValue, mark_func: JS_MarkFunc) {.cdecl.}
-  JS_MarkFunc* = proc(rt: JSRuntime, gp: ptr JSGCObjectHeader) {.cdecl.}
-  JSModuleNormalizeFunc* = proc(ctx: JSContext, module_base_name,
-    module_name: cstringConst, opaque: pointer): cstring {.cdecl.}
-  JSModuleLoaderFunc* = proc(ctx: JSContext, module_name: cstringConst,
+  JSClassFinalizer* = proc(rt: JSRuntime; val: JSValue) {.cdecl.}
+  JSClassCheckDestroy* = proc(rt: JSRuntime; val: JSValue): JS_BOOL {.cdecl.}
+  JSClassGCMark* = proc(rt: JSRuntime; val: JSValue; mark_func: JS_MarkFunc)
+    {.cdecl.}
+  JS_MarkFunc* = proc(rt: JSRuntime; gp: ptr JSGCObjectHeader) {.cdecl.}
+  JSModuleNormalizeFunc* = proc(ctx: JSContext; module_base_name,
+    module_name: cstringConst; opaque: pointer): cstring {.cdecl.}
+  JSModuleLoaderFunc* = proc(ctx: JSContext; module_name: cstringConst,
     opaque: pointer): JSModuleDef {.cdecl.}
-  JSJobFunc* = proc(ctx: JSContext, argc: cint, argv: ptr JSValue): JSValue {.cdecl.}
+  JSJobFunc* = proc(ctx: JSContext; argc: cint; argv: ptr JSValue): JSValue
+    {.cdecl.}
   JSGCObjectHeader* {.importc, header: qjsheader.} = object
   JSFreeArrayBufferDataFunc* = proc(rt: JSRuntime,
     opaque, p: pointer) {.cdecl.}
@@ -107,22 +113,24 @@ type
     setter*: JSValue
 
   JSClassExoticMethods* {.importc, header: qjsheader.} =  object
-    get_own_property*: proc(ctx: JSContext, desc: ptr JSPropertyDescriptor,
-                             obj: JSValue, prop: JSAtom): cint {.cdecl.}
-    get_own_property_names*: proc(ctx: JSContext,
-                                   ptab: ptr ptr UncheckedArray[JSPropertyEnum],
-                                   plen: ptr uint32, obj: JSValue): cint {.cdecl.}
-    delete_property*: proc(ctx: JSContext, obj: JSValue, prop: JSAtom): cint {.cdecl.}
-    define_own_property*: proc(ctx: JSContext, this_obj: JSValue,
-                                prop: JSAtom, val, getter, setter: JSValue,
-                                flags: cint): cint {.cdecl.}
-    has_property*: proc(ctx: JSContext, obj: JSValue, atom: JSAtom): cint {.cdecl.}
-    get_property*: proc(ctx: JSContext, obj: JSValue, atom: JSAtom,
-                         receiver: JSValue, flags: cint): JSValue {.cdecl.}
-    set_property*: proc(ctx: JSContext, obj: JSValue, atom: JSAtom,
-                         value, receiver: JSValue, flags: cint): cint {.cdecl.}
-
-  JSClassExoticMethodsConst* {.importc: "const JSClassExoticMethods *", header: qjsheader.} = ptr JSClassExoticMethods
+    get_own_property*: proc(ctx: JSContext; desc: ptr JSPropertyDescriptor;
+      obj: JSValue; prop: JSAtom): cint {.cdecl.}
+    get_own_property_names*: proc(ctx: JSContext;
+      ptab: ptr ptr UncheckedArray[JSPropertyEnum]; plen: ptr uint32;
+      obj: JSValue): cint {.cdecl.}
+    delete_property*: proc(ctx: JSContext; obj: JSValue; prop: JSAtom): cint
+      {.cdecl.}
+    define_own_property*: proc(ctx: JSContext; this_obj: JSValue; prop: JSAtom;
+      val, getter, setter: JSValue; flags: cint): cint {.cdecl.}
+    has_property*: proc(ctx: JSContext; obj: JSValue; atom: JSAtom): cint
+      {.cdecl.}
+    get_property*: proc(ctx: JSContext; obj: JSValue; atom: JSAtom;
+      receiver: JSValue; flags: cint): JSValue {.cdecl.}
+    set_property*: proc(ctx: JSContext; obj: JSValue; atom: JSAtom;
+      value, receiver: JSValue; flags: cint): cint {.cdecl.}
+
+  JSClassExoticMethodsConst* {.importc: "const JSClassExoticMethods *",
+    header: qjsheader.} = ptr JSClassExoticMethods
 
   JSClassDef* {.importc, header: qjsheader.} = object
     class_name*: cstring
@@ -132,7 +140,8 @@ type
     exotic*: JSClassExoticMethodsConst
     can_destroy*: JSClassCheckDestroy
 
-  JSClassDefConst* {.importc: "const JSClassDef *", header: qjsheader.} = ptr JSClassDef
+  JSClassDefConst* {.importc: "const JSClassDef *",
+    header: qjsheader.} = ptr JSClassDef
 
   JSMemoryUsage* = object
     malloc_size*, malloc_limit*, memory_used_size*: int64
@@ -218,9 +227,9 @@ type
     opaque*: pointer
 
   JSMallocFunctions* {.importc.} = object
-    js_malloc*: proc(s: ptr JSMallocState, size: csize_t): pointer {.cdecl.}
-    js_free*: proc(s: ptr JSMallocState, p: pointer) {.cdecl.}
-    js_realloc*: proc(s: ptr JSMallocState, p: pointer, size: csize_t): pointer
+    js_malloc*: proc(s: ptr JSMallocState; size: csize_t): pointer {.cdecl.}
+    js_free*: proc(s: ptr JSMallocState; p: pointer) {.cdecl.}
+    js_realloc*: proc(s: ptr JSMallocState; p: pointer; size: csize_t): pointer
       {.cdecl.}
     js_malloc_usable_size*: proc(p: pointer) {.cdecl.}
 
@@ -268,7 +277,8 @@ const
   JS_PROP_CONFIGURABLE* = (1 shl 0)
   JS_PROP_WRITABLE* = (1 shl 1)
   JS_PROP_ENUMERABLE* = (1 shl 2)
-  JS_PROP_C_W_E* = (JS_PROP_CONFIGURABLE or JS_PROP_WRITABLE or JS_PROP_ENUMERABLE)
+  JS_PROP_C_W_E* = (JS_PROP_CONFIGURABLE or JS_PROP_WRITABLE or
+    JS_PROP_ENUMERABLE)
   JS_PROP_LENGTH* = (1 shl 3) # used internally in Arrays
   JS_PROP_TMASK* = (3 shl 4) # mask for NORMAL, GETSET, VARREF, AUTOINIT
   JS_PROP_NORMAL* = (0 shl 4)
@@ -287,7 +297,7 @@ const
 const
   JS_PARSE_JSON_EXT* = (1 shl 0)
 
-template JS_CFUNC_DEF*(n: string, len: uint8, func1: JSCFunction):
+template JS_CFUNC_DEF*(n: string; len: uint8; func1: JSCFunction):
     JSCFunctionListEntry =
   JSCFunctionListEntry(name: cstring(n),
                        prop_flags: JS_PROP_WRITABLE or JS_PROP_CONFIGURABLE,
@@ -298,7 +308,7 @@ template JS_CFUNC_DEF*(n: string, len: uint8, func1: JSCFunction):
                            cproto: JS_CFUNC_generic,
                            cfunc: JSCFunctionType(generic: func1))))
 
-template JS_CFUNC_DEF_NOCONF*(n: string, len: uint8, func1: JSCFunction):
+template JS_CFUNC_DEF_NOCONF*(n: string; len: uint8; func1: JSCFunction):
     JSCFunctionListEntry =
   JSCFunctionListEntry(name: cstring(n),
                        prop_flags: JS_PROP_ENUMERABLE,
@@ -309,7 +319,7 @@ template JS_CFUNC_DEF_NOCONF*(n: string, len: uint8, func1: JSCFunction):
                            cproto: JS_CFUNC_generic,
                            cfunc: JSCFunctionType(generic: func1))))
 
-template JS_CGETSET_DEF*(n: string, fgetter: JSGetterFunction,
+template JS_CGETSET_DEF*(n: string; fgetter: JSGetterFunction;
     fsetter: JSSetterFunction): JSCFunctionListEntry =
   JSCFunctionListEntry(name: cstring(n),
                        prop_flags: JS_PROP_CONFIGURABLE,
@@ -319,7 +329,7 @@ template JS_CGETSET_DEF*(n: string, fgetter: JSGetterFunction,
                            get: JSCFunctionType(getter: fgetter),
                            set: JSCFunctionType(setter: fsetter))))
 
-template JS_CGETSET_DEF_NOCONF*(n: string, fgetter: JSGetterFunction,
+template JS_CGETSET_DEF_NOCONF*(n: string; fgetter: JSGetterFunction;
     fsetter: JSSetterFunction): JSCFunctionListEntry =
   JSCFunctionListEntry(name: cstring(n),
                        prop_flags: JS_PROP_ENUMERABLE,
@@ -329,7 +339,7 @@ template JS_CGETSET_DEF_NOCONF*(n: string, fgetter: JSGetterFunction,
                            get: JSCFunctionType(getter: fgetter),
                            set: JSCFunctionType(setter: fsetter))))
 
-template JS_CGETSET_MAGIC_DEF*(n: string, fgetter, fsetter: typed,
+template JS_CGETSET_MAGIC_DEF*(n: string; fgetter, fsetter: typed;
     m: int16): JSCFunctionListEntry =
   JSCFunctionListEntry(name: cstring(n),
                        prop_flags: JS_PROP_CONFIGURABLE,
@@ -340,15 +350,14 @@ template JS_CGETSET_MAGIC_DEF*(n: string, fgetter, fsetter: typed,
                            get: JSCFunctionType(getter_magic: fgetter),
                            set: JSCFunctionType(setter_magic: fsetter))))
 
-
 {.push header: qjsheader, importc, cdecl.}
 
 proc JS_NewRuntime*(): JSRuntime
-proc JS_NewRuntime2*(mf: ptr JSMallocFunctions, opaque: pointer): JSRuntime
+proc JS_NewRuntime2*(mf: ptr JSMallocFunctions; opaque: pointer): JSRuntime
 proc JS_FreeRuntime*(rt: JSRuntime)
 proc JS_GetRuntime*(ctx: JSContext): JSRuntime
 
-proc JS_ComputeMemoryUsage*(rt: JSRuntime, s: ptr JSMemoryUsage)
+proc JS_ComputeMemoryUsage*(rt: JSRuntime; s: ptr JSMemoryUsage)
 proc JS_RunGC*(rt: JSRuntime)
 
 proc JS_NewContext*(rt: JSRuntime): JSContext
@@ -356,125 +365,147 @@ proc JS_NewContextRaw*(rt: JSRuntime): JSContext
 proc JS_FreeContext*(ctx: JSContext)
 
 proc JS_GetGlobalObject*(ctx: JSContext): JSValue
-proc JS_IsInstanceOf*(ctx: JSContext, val: JSValue, obj: JSValue): cint
+proc JS_IsInstanceOf*(ctx: JSContext; val: JSValue; obj: JSValue): cint
 
 proc JS_NewArray*(ctx: JSContext): JSValue
 proc JS_NewObject*(ctx: JSContext): JSValue
-proc JS_NewObjectClass*(ctx: JSContext, class_id: JSClassID): JSValue
-proc JS_NewObjectProto*(ctx: JSContext, proto: JSValue): JSValue
-proc JS_NewObjectProtoClass*(ctx: JSContext, proto: JSValue, class_id: JSClassID): JSValue
-proc JS_NewPromiseCapability*(ctx: JSContext, resolving_funcs: ptr JSValue): JSValue
-proc JS_SetOpaque*(obj: JSValue, opaque: pointer)
-proc JS_GetOpaque*(obj: JSValue, class_id: JSClassID): pointer
-proc JS_GetOpaque2*(ctx: JSContext, obj: JSValue, class_id: JSClassID): pointer
+proc JS_NewObjectClass*(ctx: JSContext; class_id: JSClassID): JSValue
+proc JS_NewObjectProto*(ctx: JSContext; proto: JSValue): JSValue
+proc JS_NewObjectProtoClass*(ctx: JSContext; proto: JSValue;
+  class_id: JSClassID): JSValue
+proc JS_NewPromiseCapability*(ctx: JSContext; resolving_funcs: ptr JSValue):
+  JSValue
+proc JS_SetOpaque*(obj: JSValue; opaque: pointer)
+proc JS_GetOpaque*(obj: JSValue; class_id: JSClassID): pointer
+proc JS_GetOpaque2*(ctx: JSContext; obj: JSValue; class_id: JSClassID): pointer
 proc JS_GetClassID*(obj: JSValue): JSClassID
 
-proc JS_ParseJSON*(ctx: JSContext, buf: cstring, buf_len: csize_t, filename: cstring): JSValue
-proc JS_ParseJSON2*(ctx: JSContext, buf: cstring, buf_len: csize_t,
-  filename: cstring, flags: cint): JSValue
+proc JS_ParseJSON*(ctx: JSContext; buf: cstring; buf_len: csize_t;
+  filename: cstring): JSValue
+proc JS_ParseJSON2*(ctx: JSContext; buf: cstring; buf_len: csize_t;
+  filename: cstring; flags: cint): JSValue
 
-proc JS_NewArrayBuffer*(ctx: JSContext, buf: ptr UncheckedArray[uint8],
-  len: csize_t, free_func: JSFreeArrayBufferDataFunc, opaque: pointer,
+proc JS_NewArrayBuffer*(ctx: JSContext; buf: ptr UncheckedArray[uint8];
+  len: csize_t; free_func: JSFreeArrayBufferDataFunc; opaque: pointer;
   is_shared: JS_BOOL): JSValue
-proc JS_GetArrayBuffer*(ctx: JSContext, psize: ptr csize_t, obj: JSValue): ptr uint8
-proc JS_GetTypedArrayBuffer*(ctx: JSContext, obj: JSValue, pbyte_offset,
-  pbyte_length, pbytes_per_element: ptr csize_t): JSValue
+proc JS_GetArrayBuffer*(ctx: JSContext; psize: ptr csize_t; obj: JSValue):
+  ptr uint8
+proc JS_GetTypedArrayBuffer*(ctx: JSContext; obj: JSValue;
+  pbyte_offset, pbyte_length, pbytes_per_element: ptr csize_t): JSValue
 
 proc JS_NewClassID*(pclass_id: ptr JSClassID): JSClassID
-proc JS_NewClass*(rt: JSRuntime, class_id: JSClassID, class_def: ptr JSClassDef): cint
-proc JS_IsRegisteredClass*(rt: JSRuntime, class_id: JSClassID): cint
-proc JS_SetClassProto*(ctx: JSContext, class_id: JSClassID, obj: JSValue)
-proc JS_GetClassProto*(ctx: JSContext, class_id: JSClassID): JSValue
-proc JS_SetConstructor*(ctx: JSContext, func_obj: JSValue, proto: JSValue)
-proc JS_SetPrototype*(ctx: JSContext, obj: JSValue, proto_val: JSValue): cint
-proc JS_GetPrototype*(ctx: JSContext, val: JSValue): JSValue
-
-proc JS_NewBool*(ctx: JSContext, val: JS_BOOL): JSValue
-proc JS_NewInt32*(ctx: JSContext, val: int32): JSValue
-proc JS_NewCatchOffset*(ctx: JSContext, val: int32): JSValue
-proc JS_NewInt64*(ctx: JSContext, val: int64): JSValue
-proc JS_NewUint32*(ctx: JSContext, val: uint32): JSValue
-proc JS_NewBigInt64*(ctx: JSContext, val: int64): JSValue
-proc JS_NewBigUInt64*(ctx: JSContext, val: uint64): JSValue
-proc JS_NewFloat64*(ctx: JSContext, val: cdouble): JSValue
-
-proc JS_NewAtomLen*(ctx: JSContext, str: cstring, len: csize_t): JSAtom
-proc JS_NewAtomUInt32*(ctx: JSContext, u: uint32): JSAtom
-proc JS_ValueToAtom*(ctx: JSContext, val: JSValue): JSAtom
-proc JS_AtomToValue*(ctx: JSContext, atom: JSAtom): JSValue
-proc JS_AtomToCString*(ctx: JSContext, atom: JSAtom): cstring
-proc JS_FreeAtom*(ctx: JSContext, atom: JSAtom)
-proc JS_FreeAtomRT*(rt: JSRuntime, atom: JSAtom)
-
-proc JS_NewCFunction2*(ctx: JSContext, cfunc: JSCFunction, name: cstring, length: cint, proto: JSCFunctionEnum, magic: cint): JSValue
-proc JS_NewCFunctionData*(ctx: JSContext, cfunc: JSCFunctionData, length: cint, magic: cint, data_len: cint, data: ptr JSValue): JSValue
-proc JS_NewCFunction*(ctx: JSContext, cfunc: JSCFunction, name: cstring, length: cint): JSValue
-
-proc JS_NewString*(ctx: JSContext, str: cstring): JSValue
-proc JS_NewStringLen*(ctx: JSContext, str: cstring, len1: csize_t): JSValue
-proc JS_NewAtomString*(ctx: JSContext, str: cstring): JSValue
+proc JS_NewClass*(rt: JSRuntime; class_id: JSClassID;
+  class_def: ptr JSClassDef): cint
+proc JS_IsRegisteredClass*(rt: JSRuntime; class_id: JSClassID): cint
+proc JS_SetClassProto*(ctx: JSContext; class_id: JSClassID; obj: JSValue)
+proc JS_GetClassProto*(ctx: JSContext; class_id: JSClassID): JSValue
+proc JS_SetConstructor*(ctx: JSContext; func_obj: JSValue; proto: JSValue)
+proc JS_SetPrototype*(ctx: JSContext; obj: JSValue; proto_val: JSValue): cint
+proc JS_GetPrototype*(ctx: JSContext; val: JSValue): JSValue
+
+proc JS_NewBool*(ctx: JSContext; val: JS_BOOL): JSValue
+proc JS_NewInt32*(ctx: JSContext; val: int32): JSValue
+proc JS_NewCatchOffset*(ctx: JSContext; val: int32): JSValue
+proc JS_NewInt64*(ctx: JSContext; val: int64): JSValue
+proc JS_NewUint32*(ctx: JSContext; val: uint32): JSValue
+proc JS_NewBigInt64*(ctx: JSContext; val: int64): JSValue
+proc JS_NewBigUInt64*(ctx: JSContext; val: uint64): JSValue
+proc JS_NewFloat64*(ctx: JSContext; val: cdouble): JSValue
+
+proc JS_NewAtomLen*(ctx: JSContext; str: cstring; len: csize_t): JSAtom
+proc JS_NewAtomUInt32*(ctx: JSContext; u: uint32): JSAtom
+proc JS_ValueToAtom*(ctx: JSContext; val: JSValue): JSAtom
+proc JS_AtomToValue*(ctx: JSContext; atom: JSAtom): JSValue
+proc JS_AtomToCString*(ctx: JSContext; atom: JSAtom): cstring
+proc JS_FreeAtom*(ctx: JSContext; atom: JSAtom)
+proc JS_FreeAtomRT*(rt: JSRuntime; atom: JSAtom)
+
+proc JS_NewCFunction2*(ctx: JSContext; cfunc: JSCFunction; name: cstring;
+  length: cint; proto: JSCFunctionEnum; magic: cint): JSValue
+proc JS_NewCFunctionData*(ctx: JSContext; cfunc: JSCFunctionData;
+  length, magic, data_len: cint; data: ptr JSValue): JSValue
+proc JS_NewCFunction*(ctx: JSContext; cfunc: JSCFunction; name: cstring;
+  length: cint): JSValue
+
+proc JS_NewString*(ctx: JSContext; str: cstring): JSValue
+proc JS_NewStringLen*(ctx: JSContext; str: cstring; len1: csize_t): JSValue
+proc JS_NewAtomString*(ctx: JSContext; str: cstring): JSValue
 proc JS_ToString*(ctx: JSContext; val: JSValue): JSValue
 
-proc JS_SetProperty*(ctx: JSContext, this_obj: JSValue, prop: JSAtom, val: JSValue): cint
-proc JS_SetPropertyUint32*(ctx: JSContext, this_obj: JSValue, idx: uint32, val: JSValue): cint
-proc JS_SetPropertyInt64*(ctx: JSContext, this_obj: JSValue, idx: int64, val: JSValue): cint
-proc JS_SetPropertyStr*(ctx: JSContext, this_obj: JSValue, prop: cstring, val: JSValue): cint
-proc JS_SetPropertyFunctionList*(ctx: JSContext, obj: JSValue, tab: ptr JSCFunctionListEntry, len: cint)
-proc JS_GetProperty*(ctx: JSContext, this_obj: JSValue, prop: JSAtom): JSValue
-proc JS_GetPropertyStr*(ctx: JSContext, this_obj: JSValue, prop: cstring): JSValue
-proc JS_GetPropertyUint32*(ctx: JSContext, this_obj: JSValue, idx: uint32): JSValue
-proc JS_GetOwnPropertyNames*(ctx: JSContext,
-    ptab: ptr ptr UncheckedArray[JSPropertyEnum], plen: ptr uint32,
-    obj: JSValue, flags: cint): cint
-
-proc JS_GetOwnProperty*(ctx: JSContext, desc: ptr JSPropertyDescriptor,
-  obj: JSValue, prop: JSAtom): cint
-proc JS_Call*(ctx: JSContext, func_obj, this_obj: JSValue, argc: cint,
+proc JS_SetProperty*(ctx: JSContext; this_obj: JSValue; prop: JSAtom;
+  val: JSValue): cint
+proc JS_SetPropertyUint32*(ctx: JSContext; this_obj: JSValue; idx: uint32;
+  val: JSValue): cint
+proc JS_SetPropertyInt64*(ctx: JSContext; this_obj: JSValue; idx: int64;
+  val: JSValue): cint
+proc JS_SetPropertyStr*(ctx: JSContext; this_obj: JSValue; prop: cstring;
+  val: JSValue): cint
+proc JS_SetPropertyFunctionList*(ctx: JSContext; obj: JSValue;
+  tab: ptr JSCFunctionListEntry; len: cint)
+proc JS_GetProperty*(ctx: JSContext; this_obj: JSValue; prop: JSAtom): JSValue
+proc JS_GetPropertyStr*(ctx: JSContext; this_obj: JSValue; prop: cstring):
+  JSValue
+proc JS_GetPropertyUint32*(ctx: JSContext; this_obj: JSValue; idx: uint32):
+  JSValue
+proc JS_GetOwnPropertyNames*(ctx: JSContext;
+    ptab: ptr ptr UncheckedArray[JSPropertyEnum]; plen: ptr uint32;
+    obj: JSValue; flags: cint): cint
+
+proc JS_GetOwnProperty*(ctx: JSContext; desc: ptr JSPropertyDescriptor;
+  obj: JSValue; prop: JSAtom): cint
+proc JS_Call*(ctx: JSContext; func_obj, this_obj: JSValue; argc: cint;
   argv: ptr JSValue): JSValue
-proc JS_NewObjectFromCtor*(ctx: JSContext, ctor: JSValue,
+proc JS_NewObjectFromCtor*(ctx: JSContext; ctor: JSValue;
   class_id: JSClassID): JSValue
-proc JS_Invoke*(ctx: JSContext, this_obj: JSValue, atom: JSAtom, argc: cint,
+proc JS_Invoke*(ctx: JSContext; this_obj: JSValue; atom: JSAtom; argc: cint;
   argv: ptr JSValue): JSValue
-proc JS_CallConstructor*(ctx: JSContext, func_obj: JSValue, argc: cint,
+proc JS_CallConstructor*(ctx: JSContext; func_obj: JSValue; argc: cint;
   argv: ptr JSValue): JSValue
 
-proc JS_DefineProperty*(ctx: JSContext, this_obj: JSValue, prop: JSAtom, val: JSValue, getter: JSValue, setter: JSValue, flags: cint): cint
-proc JS_DefinePropertyValue*(ctx: JSContext, this_obj: JSValue, prop: JSAtom, val: JSValue, flags: cint): cint
-proc JS_DefinePropertyValueUint32*(ctx: JSContext, this_obj: JSValue, idx: uint32, val: JSValue, flags: cint): cint
-proc JS_DefinePropertyValueInt64*(ctx: JSContext, this_obj: JSValue, idx: int64, val: JSValue, flags: cint): cint
-proc JS_DefinePropertyValueStr*(ctx: JSContext, this_obj: JSValue, prop: cstring, val: JSValue, flags: cint): cint
-proc JS_DefinePropertyValueGetSet*(ctx: JSContext, this_obj: JSValue, prop: JSAtom, getter: JSValue, setter: JSValue, flags: cint): cint
-
-proc JS_FreeValue*(ctx: JSContext, v: JSValue)
-proc JS_FreeValueRT*(rt: JSRuntime, v: JSValue)
-proc JS_DupValue*(ctx: JSContext, v: JSValue): JSValue
-
-proc JS_ToBool*(ctx: JSContext, val: JSValue): cint # return -1 for JS_EXCEPTION
-proc JS_ToInt32*(ctx: JSContext, pres: ptr int32, val: JSValue): cint
-proc JS_ToUint32*(ctx: JSContext, pres: ptr uint32, val: JSValue): cint
-proc JS_ToInt64*(ctx: JSContext, pres: ptr int64, val: JSValue): cint
-proc JS_ToIndex*(ctx: JSContext, plen: ptr uint64, val: JSValue): cint
-proc JS_ToFloat64*(ctx: JSContext, pres: ptr float64, val: JSValue): cint
+proc JS_DefineProperty*(ctx: JSContext; this_obj: JSValue; prop: JSAtom;
+  val, getter, setter: JSValue; flags: cint): cint
+proc JS_DefinePropertyValue*(ctx: JSContext; this_obj: JSValue; prop: JSAtom;
+  val: JSValue; flags: cint): cint
+proc JS_DefinePropertyValueUint32*(ctx: JSContext; this_obj: JSValue;
+  idx: uint32; val: JSValue; flags: cint): cint
+proc JS_DefinePropertyValueInt64*(ctx: JSContext; this_obj: JSValue; idx: int64;
+  val: JSValue; flags: cint): cint
+proc JS_DefinePropertyValueStr*(ctx: JSContext; this_obj: JSValue;
+  prop: cstring; val: JSValue; flags: cint): cint
+proc JS_DefinePropertyValueGetSet*(ctx: JSContext; this_obj: JSValue;
+  prop: JSAtom; getter, setter: JSValue; flags: cint): cint
+
+proc JS_FreeValue*(ctx: JSContext; v: JSValue)
+proc JS_FreeValueRT*(rt: JSRuntime; v: JSValue)
+proc JS_DupValue*(ctx: JSContext; v: JSValue): JSValue
+
+proc JS_ToBool*(ctx: JSContext; val: JSValue): cint # return -1 for JS_EXCEPTION
+proc JS_ToInt32*(ctx: JSContext; pres: ptr int32; val: JSValue): cint
+proc JS_ToUint32*(ctx: JSContext; pres: ptr uint32; val: JSValue): cint
+proc JS_ToInt64*(ctx: JSContext; pres: ptr int64; val: JSValue): cint
+proc JS_ToIndex*(ctx: JSContext; plen: ptr uint64; val: JSValue): cint
+proc JS_ToFloat64*(ctx: JSContext; pres: ptr float64; val: JSValue): cint
 # return an exception if 'val' is a Number
-proc JS_ToBigInt64*(ctx: JSContext, pres: ptr int64, val: JSValue): cint
+proc JS_ToBigInt64*(ctx: JSContext; pres: ptr int64; val: JSValue): cint
 # same as JS_ToInt64 but allow BigInt
-proc JS_ToInt64Ext*(ctx: JSContext, pres: ptr int64, val: JSValue): cint
+proc JS_ToInt64Ext*(ctx: JSContext; pres: ptr int64; val: JSValue): cint
 
-proc JS_ToCStringLen*(ctx: JSContext, plen: ptr csize_t, val1: JSValue): cstring
-proc JS_ToCString*(ctx: JSContext, val1: JSValue): cstring
+proc JS_ToCStringLen*(ctx: JSContext; plen: ptr csize_t; val1: JSValue): cstring
+proc JS_ToCString*(ctx: JSContext; val1: JSValue): cstring
 proc JS_FreeCString*(ctx: JSContext, `ptr`: cstring)
 
-proc JS_NewNarrowStringLen*(ctx: JSContext, s: cstring, len: csize_t): JSValue
+proc JS_NewNarrowStringLen*(ctx: JSContext; s: cstring; len: csize_t): JSValue
 proc JS_IsStringWideChar*(str: JSValue): JS_BOOL
 proc JS_GetNarrowStringBuffer*(str: JSValue): ptr UncheckedArray[uint8]
 proc JS_GetStringLength*(str: JSValue): uint32
 
-proc JS_Eval*(ctx: JSContext, input: cstring, input_len: csize_t,
-  filename: cstring, eval_flags: cint): JSValue
-proc JS_EvalFunction*(ctx: JSContext, val: JSValue): JSValue
-proc JS_SetInterruptHandler*(rt: JSRuntime, cb: JSInterruptHandler, opaque: pointer)
-proc JS_SetCanBlock*(rt: JSRuntime, can_block: JS_BOOL)
-proc JS_SetIsHTMLDDA*(ctx: JSContext, obj: JSValue)
+proc JS_Eval*(ctx: JSContext; input: cstring; input_len: csize_t;
+  filename: cstring; eval_flags: cint): JSValue
+proc JS_EvalFunction*(ctx: JSContext; val: JSValue): JSValue
+proc JS_SetInterruptHandler*(rt: JSRuntime; cb: JSInterruptHandler;
+  opaque: pointer)
+proc JS_SetCanBlock*(rt: JSRuntime; can_block: JS_BOOL)
+proc JS_SetIsHTMLDDA*(ctx: JSContext; obj: JSValue)
 
 proc JS_IsNumber*(v: JSValue): JS_BOOL
 proc JS_IsBigInt*(v: JSValue): JS_BOOL
@@ -489,40 +520,46 @@ proc JS_IsString*(v: JSValue): JS_BOOL
 proc JS_IsSymbol*(v: JSValue): JS_BOOL
 proc JS_IsObject*(v: JSValue): JS_BOOL
 
-proc JS_IsFunction*(ctx: JSContext, val: JSValue): JS_BOOL
-proc JS_IsArray*(ctx: JSContext, v: JSValue): cint
+proc JS_IsFunction*(ctx: JSContext; val: JSValue): JS_BOOL
+proc JS_IsArray*(ctx: JSContext; v: JSValue): cint
 
-proc JS_Throw*(ctx: JSContext, obj: JSValue): JSValue
+proc JS_Throw*(ctx: JSContext; obj: JSValue): JSValue
 proc JS_GetException*(ctx: JSContext): JSValue
-proc JS_IsError*(ctx: JSContext, v: JSValue): JS_BOOL
+proc JS_IsError*(ctx: JSContext; v: JSValue): JS_BOOL
 proc JS_NewError*(ctx: JSContext): JSValue
-proc JS_ThrowSyntaxError*(ctx: JSContext, fmt: cstring): JSValue {.varargs, discardable.}
-proc JS_ThrowTypeError*(ctx: JSContext, fmt: cstring): JSValue {.varargs, discardable.}
-proc JS_ThrowReferenceError*(ctx: JSContext, fmt: cstring): JSValue {.varargs, discardable.}
-proc JS_ThrowRangeError*(ctx: JSContext, fmt: cstring): JSValue {.varargs, discardable.}
-proc JS_ThrowInternalError*(ctx: JSContext, fmt: cstring): JSValue {.varargs, discardable.}
-
-proc JS_SetModuleLoaderFunc*(rt: JSRuntime,
-  module_normalize: JSModuleNormalizeFunc, module_loader: JSModuleLoaderFunc,
+proc JS_ThrowSyntaxError*(ctx: JSContext; fmt: cstring): JSValue {.varargs,
+  discardable.}
+proc JS_ThrowTypeError*(ctx: JSContext; fmt: cstring): JSValue {.varargs,
+  discardable.}
+proc JS_ThrowReferenceError*(ctx: JSContext; fmt: cstring): JSValue {.varargs,
+  discardable.}
+proc JS_ThrowRangeError*(ctx: JSContext; fmt: cstring): JSValue {.varargs,
+  discardable.}
+proc JS_ThrowInternalError*(ctx: JSContext; fmt: cstring): JSValue {.varargs,
+  discardable.}
+
+proc JS_SetModuleLoaderFunc*(rt: JSRuntime;
+  module_normalize: JSModuleNormalizeFunc; module_loader: JSModuleLoaderFunc;
   opaque: pointer)
-proc JS_GetImportMeta*(ctx: JSContext, m: JSModuleDef): JSValue
-proc JS_GetModuleName*(ctx: JSContext, m: JSModuleDef): JSAtom
+proc JS_GetImportMeta*(ctx: JSContext; m: JSModuleDef): JSValue
+proc JS_GetModuleName*(ctx: JSContext; m: JSModuleDef): JSAtom
 
-proc JS_EnqueueJob*(ctx: JSContext, job_func: JSJobFunc, argc: cint, argv: ptr JSValue): cint
+proc JS_EnqueueJob*(ctx: JSContext; job_func: JSJobFunc; argc: cint;
+  argv: ptr JSValue): cint
 proc JS_IsJobPending*(rt: JSRuntime): JS_BOOL
-proc JS_ExecutePendingJob*(rt: JSRuntime, pctx: ptr JSContext): cint
+proc JS_ExecutePendingJob*(rt: JSRuntime; pctx: ptr JSContext): cint
 
 proc JS_GetRuntimeOpaque*(rt: JSRuntime): pointer
-proc JS_SetRuntimeOpaque*(rt: JSRuntime, p: pointer)
+proc JS_SetRuntimeOpaque*(rt: JSRuntime; p: pointer)
 
-proc JS_SetContextOpaque*(ctx: JSContext, opaque: pointer)
+proc JS_SetContextOpaque*(ctx: JSContext; opaque: pointer)
 proc JS_GetContextOpaque*(ctx: JSContext): pointer
 
-proc js_malloc*(ctx: JSContext, size: csize_t): pointer
-proc js_mallocz*(ctx: JSContext, size: csize_t): pointer
-proc js_realloc*(ctx: JSContext, p: pointer, size: csize_t): pointer
-proc js_free_rt*(rt: JSRuntime, p: pointer)
-proc js_free*(ctx: JSContext, p: pointer)
+proc js_malloc*(ctx: JSContext; size: csize_t): pointer
+proc js_mallocz*(ctx: JSContext; size: csize_t): pointer
+proc js_realloc*(ctx: JSContext; p: pointer; size: csize_t): pointer
+proc js_free_rt*(rt: JSRuntime; p: pointer)
+proc js_free*(ctx: JSContext; p: pointer)
 
-proc js_strdup*(ctx: JSContext, str: cstring): cstring
+proc js_strdup*(ctx: JSContext; str: cstring): cstring
 {.pop.}
diff --git a/src/bindings/termcap.nim b/src/bindings/termcap.nim
index 4cc3241b..6d3d0e37 100644
--- a/src/bindings/termcap.nim
+++ b/src/bindings/termcap.nim
@@ -20,12 +20,13 @@ when termlib != "":
   {.passl: termlib.}
   {.push importc, cdecl.}
   const termcap_found* = true
-  proc tgetent*(bp: cstring, name: cstring): cint
+  proc tgetent*(bp: cstring; name: cstring): cint
   proc tgetnum*(id: cstring): cint
   proc tgetflag*(id: cstring): cint
-  proc tgetstr*(id: cstring, area: ptr cstring): cstring
-  proc tgoto*(cap: cstring, x, y: cint): cstring
-  proc tputs*(str: cstring, len: cint, putc: proc(c: char): cint {.cdecl.}): cint
+  proc tgetstr*(id: cstring; area: ptr cstring): cstring
+  proc tgoto*(cap: cstring; x, y: cint): cstring
+  proc tputs*(str: cstring; len: cint; putc: proc(c: char): cint {.cdecl.}):
+    cint
   {.pop.}
 else:
   const termcap_found* = false
diff --git a/src/bindings/zlib.nim b/src/bindings/zlib.nim
index e090bc71..e7e4e94d 100644
--- a/src/bindings/zlib.nim
+++ b/src/bindings/zlib.nim
@@ -35,11 +35,11 @@ const
   Z_UNKNOWN* = cint(2)
 
 type
-  alloc_func* {.importc, header: "zlib.h".} = proc (opaque: pointer,
-    items: cuint, size: cuint): pointer {.cdecl.}
+  alloc_func* {.importc, header: "zlib.h".} = proc (opaque: pointer;
+    items, size: cuint): pointer {.cdecl.}
 
-  free_func* {.importc, header: "zlib.h".} = proc (opaque: pointer,
-    address: pointer) {.cdecl.}
+  free_func* {.importc, header: "zlib.h".} = proc (opaque, address: pointer)
+    {.cdecl.}
 
   internal_state* {.importc, header: "zlib.h".} = object
 
@@ -70,10 +70,10 @@ type
 proc inflateInit*(strm: z_streamp): cint
 proc inflate*(strm: z_streamp, flush: cint): cint
 proc inflateEnd*(strm: z_streamp): cint
-proc compress*(dest: ptr uint8, destLen: ptr culong, source: ptr uint8,
+proc compress*(dest: ptr uint8; destLen: ptr culong; source: ptr uint8;
   sourceLen: culong): cint
 proc compressBound*(sourceLen: culong): culong
-proc uncompress*(dest: ptr uint8, destLen: ptr culong, source: ptr uint8,
+proc uncompress*(dest: ptr uint8; destLen: ptr culong; source: ptr uint8;
   sourceLen: culong): cint
-proc crc32*(crc: culong, buf: ptr uint8, len: cuint): culong
+proc crc32*(crc: culong; buf: ptr uint8; len: cuint): culong
 {.pop.}