blob: fe6039082263e0d05c7e8f8dfc79d62ebaf15333 (
plain) (
tree)
|
|
type
LREFlag* {.size: sizeof(cint).} = enum
LRE_FLAG_GLOBAL = "g"
LRE_FLAG_IGNORECASE = "i"
LRE_FLAG_MULTILINE = "m"
LRE_FLAG_DOTALL = "s"
LRE_FLAG_UNICODE = "u"
LRE_FLAG_STICKY = "y"
LREFlags* = set[LREFlag]
func toCInt*(flags: LREFlags): cint =
cint(cast[uint8](flags))
func toLREFlags*(flags: cint): LREFlags =
cast[LREFlags](flags)
{.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_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
proc lre_get_flags*(bc_buf: ptr uint8): cint
{.pop.}
|