This package contains an API for zlog in ATS.
stadef zlgctx = zlog_context_t0ype
absvt@ype
zlog_context_t0ype (n:int) = int
vtypedef zlgctx0 = [n:int] zlgctx (n)
vtypedef zlgctx1 = [n:int | n >= 0] zlgctx (n)
castfn zlgctx2int {n:int} (!zlgctx(n)):<> int(n)
stadef zlgcat = zlog_category_type
absvtype
zlog_category_type (l:addr) = ptr(l)
vtypedef zlgcat1 = [l:addr | l > null] zlgcat (l)
castfn zlgcat2ptr {l:addr} (!zlgcat (l)):<> ptr (l)
fun zlog_init
(cfg: NSH(stropt)): zlgctx0 = "mac#%"
fun zlog_reload
(!zlgctx1 >> _, cfg: NSH(stropt)): int(*err*) = "mac#%"
fun zlog_fini (zlgctx0): void = "mac#%"
fun zlog_get_category {n:int | n >= 0} ( ctx: !zlgctx (n), cname: NSH(string) ) : [l:addr] ( minus (zlgctx(n), zlgcat(l)) | zlgcat(l) ) = "mac#%" // endfun
fun zlog_get_mdc
(!zlgctx1, string(*key*)): vStrptr0 = "mac#%"
fun zlog_put_mdc
(!zlgctx1, string(*key*), string(*val*)): int = "mac#%"
fun zlog_remove_mdc (!zlgctx1, string(*key*)): void = "mac#%"
fun zlog_clean_mdc (!zlgctx1): void = "mac#%"