Lines Matching defs:ast
5 * This software is part of the ast package *
29 * std + posix + ast
50 #ifndef ast
51 #define ast _ast_info
190 #define mbmax() (ast.mb_cur_max)
191 #define mberr() (ast.tmp_int<0)
193 #define mbcoll() (ast.mb_xfrm!=0)
196 #define mb2wc(w,p,n) (*ast.mb_towc)(&w,(char*)p,n)
197 #define mbchar(p) (mbwide()?((ast.tmp_int=(*ast.mb_towc)(&ast.tmp_wchar,(char*)(p),mbmax()))>0?((p+=ast.tmp_int),ast.tmp_wchar):(p+=ast.mb_sync+1,ast.tmp_int)):(*(unsigned char*)(p++)))
198 #define mbnchar(p,n) (mbwide()?((ast.tmp_int=(*ast.mb_towc)(&ast.tmp_wchar,(char*)(p),n))>0?((p+=ast.tmp_int),ast.tmp_wchar):(p+=ast.mb_sync+1,ast.tmp_int)):(*(unsigned char*)(p++)))
199 #define mbinit() (mbwide()?(*ast.mb_towc)((wchar_t*)0,(char*)0,mbmax()):0)
200 #define mbsize(p) (mbwide()?(*ast.mb_len)((char*)(p),mbmax()):((p),1))
201 #define mbnsize(p,n) (mbwide()?(*ast.mb_len)((char*)(p),n):((p),1))
202 #define mbconv(s,w) (ast.mb_conv?(*ast.mb_conv)(s,w):((*(s)=(w)),1))
203 #define mbwidth(w) (ast.mb_width?(*ast.mb_width)(w):1)
204 #define mbxfrm(t,f,n) (mbcoll()?(*ast.mb_xfrm)((char*)(t),(char*)(f),n):0)
205 #define mbalpha(w) (ast.mb_alpha?(*ast.mb_alpha)(w):isalpha((w)&0xff))