Exemplo n.º 1
0
_dle void unshiftcase2__(char* buf,long siz,int argc,...) {
	int i1=0;
    _for_args( argc )
		case__(buf,s,&i1,0x10|0x20);
    _next_args
	buf[i1]=0;
}
Exemplo n.º 2
0
_dle void shiftcase__(char* buf,long siz,int argc,...) {
	int i1=0;
    _for_args( argc )
		case__(buf,s,&i1,1);
    _next_args
	buf[i1]=0;
}
Exemplo n.º 3
0
dlle___ void dlln___(for_array__)(int*err,char**addr_ret,void*ce,void* qu,bool no,bool desc,const char*code,int argc,...){
	string ret;
	_for_args( argc )
	array_cb__(err,ce,qu,code,s,no,desc,ret);
			if(*err)
				break;
	_next_args
	*addr_ret=dup__(ret.c_str());
}
Exemplo n.º 4
0
const char* cb__(void* jsq,void* shangji,int* err,void*ce,const char* src,bool src_is_file,const char* src2,int argc,...){
	dir___* d=(dir___*)jsq;
	_for_args( argc )
		d->list_.push_back(s);
	//printf("{%s|%d}",s,d->list_.size());
		break;
	_next_args
	return NULL;
}
Exemplo n.º 5
0
const char* callback2__(void* jsq,void* shangji,int* err,
		const char* src,bool src_is_file,int argc,...)
{
	std::string* buf=(std::string*)src;
	_for_args( argc )
		*buf+=s;
	_next_args
	return 0;
}
Exemplo n.º 6
0
dlle___ int i__(char*cmd,int argc,...){
	std::string out;
	_for_args( argc )
		out+=s;
	_next_args
	redireconsoi___ roi;
	roi.out_=out.c_str();
	roi.out_len_=out.size();
	return roi.my_system(cmd, 2);
}
Exemplo n.º 7
0
dlle___ void find_and_get__(int*err,char**addr_ret,const char*src1,int from,
		const char*tag1,void*ce,void*shangji,const char*code,int argc,...){
	string buf;
	if(src1){
		const char*src=src1;
		for(;--from>=0;)
			src++;
		list<const char*> lst;
		_for_args( argc )
			lst.push_back(s);
		_next_args
		if(tag1){
			for(;*src;src++){
				if(startswith__(src,tag1)){
					src+=strlen(tag1);
					break;
				}
			}
		}
		bool b=false;
		for(;*src;src++){
			for(list<const char*>::iterator li=lst.begin();li!=lst.end();li++){
				const char*sp=*li;
				if(startswith__(src,sp)){
					src+=strlen(sp);
					b=true;
					break;
				}
			}
			if(b)
				break;
			buf+=*src;
		}
		if(code){
			char i[8]="-1";
			if(*src)
				sprintf(i,"%d",src-src1);
			callback_(jsq_,shangji,err,ce,code,false,NULL,1,i);
		}
	}
	*addr_ret=dup__(buf.c_str());
}