This package contains an API in ATS for the pcre package.
absvtype pcreptr (l:addr) = ptr
vtypedef pcreptr0 = [l:agez] pcreptr (l)
vtypedef pcreptr1 = [l:addr | l > null] pcreptr (l)
absvtype pcreptr_extra (l:addr) = ptr
vtypedef pcreptr0_extra = [l:agez] pcreptr_extra (l)
vtypedef pcreptr1_extra = [l:addr | l > null] pcreptr_extra (l)
castfn
pcreptr2ptr {l:addr} (!pcreptr (l)): ptr (l)
castfn
pcreptr2ptr_extra {l:addr} (!pcreptr_extra (l)): ptr (l)
fun pcre_compile ( pattern: RD(string) , options: uint(*bits*) , errptr: &ptr? >> ptr, erroffset: &int? >> int, tableptr: ptr ) : pcreptr0 = "mac#%" // end of [pcre_compile]
fun pcre_compile2 ( pattern: RD(string) , options: uint(*bits*) , errorcodeptr: &int? >> int , errptr: &ptr? >> ptr, erroffset: &int? >> int, tableptr: ptr ) : pcreptr0 = "mac#%" // end of [pcre_compile2]
fun pcre_free (code: pcreptr0): void = "mac#%"
fun pcre_study
(
pcre: !pcreptr1, options: uint, errptr: &ptr? >> ptr
) : pcreptr0_extra = "mac#%"
fun pcre_free_study (extra: pcreptr0_extra): void = "mac#%"
fun pcre_exec{n,n2:int} ( code: !pcreptr1, extra: !pcreptr0_extra , subject: arrayref(char, n), length: int n , startoffset: natLte(n), options: uint(*bits*) , ovector: arrayref(int, n2), ovecsize: int(n2) ) : int = "mac#%" // end of [pcre_exec]
fun{
} pcre_match_string
(code: !pcreptr1, subject: string): int
fun{ } pcre_match_substring {n:int}{st,ln:int | st+ln <= n} ( code: !pcreptr1 , subject: string(n), st: size_t(st), ln: size_t(ln) ) : int // end of [pcre_match_substring]
fun
pcre_match2_substring
{n:int}{st,ln:int | st+ln <= n}
(
code: !pcreptr1
, subject: string(n), st: size_t(st), ln: size_t(ln)
, matched_beg: &int? >> int(n0), matched_end: &int? >> int(n1)
) : #[n0,n1:int | n0 <= n1; n1 <= st+ln] int
fun
pcre_match3_substring
{n:int}{st,ln:int | st+ln <= n}
(
code: !pcreptr1
, subject: string(n), st: size_t(st), ln: size_t(ln)
, matched_beg: &int? >> int(n0), matched_end: &int? >> int(n1), err: &int? >> int
) : #[n0,n1:int | n0 <= n1; n1 <= st+ln] List0_vt (Strptr0)
This page is created with ATS by Hongwei Xi and also maintained by Hongwei Xi. |