⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 batcast.c

📁 一个内存数据库的源代码这是服务器端还有客户端
💻 C
📖 第 1 页 / 共 5 页
字号:
batcast_export str CMDconvert_void_str_dbl(int *ret, int *bid);str CMDconvert_void_str_dbl(int *ret, int *bid){	return CMDconvert_str_dbl(ret,bid);}#line 282 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"#line 296 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 166 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_sht_oid(int *ret, int *bid);str CMDconvert_sht_oid(int *ret, int *bid){	BAT *b,*bn;	size_t xx;	oid y;	char *p, *q, *h;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.oid", "cannot access descriptor");   }#line 173 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_oid, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_oid, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.oid", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 174 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	h= (char*) BUNhead(b,BUNfirst(b));	p= (char*) BUNfirst(b);	q= (char*) BUNlast(b);	xx= BUNsize(b);	while(p<q){		sht *r = (sht*)BUNtail(b,p);		y= (*r == sht_nil) ? oid_nil: (oid)(*r);		bunfastins(bn, h, &y);		p+= xx; h+=xx;	}bunins_failed:	#line 133 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);	*ret= bn->batCacheid;	BATkey(BATmirror(bn), FALSE);	bn->tsorted = 0;	BBPkeepref(*ret);	BBPreleaseref(b->batCacheid);	return MAL_SUCCEED;#line 187 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"}#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 144 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_void_sht_oid(int *ret, int *bid);str CMDconvert_void_sht_oid(int *ret, int *bid){	BAT *b,*bn;	sht *p,*q;	oid *o;	size_t xx;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.oid", "cannot access descriptor");   }#line 151 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_oid, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_oid, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.oid", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 152 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	o= (oid*)BUNtail(bn,BUNfirst(bn));	p= (sht*)BUNtail(b,BUNfirst(b));	q= (sht*)BUNtail(b,BUNlast(b));	xx= BUNsize(b);	while(p<q){		*o = *p== sht_nil ?  oid_nil: (oid) *p;		p= (sht *) ((char*)p+xx); o++;	}	(bn)->batBuns->free += BATcount(b)*sizeof(oid);	BATsetcount(bn, BATcount(b));	#line 133 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);	*ret= bn->batCacheid;	BATkey(BATmirror(bn), FALSE);	bn->tsorted = 0;	BBPkeepref(*ret);	BBPreleaseref(b->batCacheid);	return MAL_SUCCEED;#line 163 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"}#line 288 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"#line 296 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 166 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_sht_int(int *ret, int *bid);str CMDconvert_sht_int(int *ret, int *bid){	BAT *b,*bn;	size_t xx;	int y;	char *p, *q, *h;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.int", "cannot access descriptor");   }#line 173 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_int, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_int, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.int", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 174 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	h= (char*) BUNhead(b,BUNfirst(b));	p= (char*) BUNfirst(b);	q= (char*) BUNlast(b);	xx= BUNsize(b);	while(p<q){		sht *r = (sht*)BUNtail(b,p);		y= (*r == sht_nil) ? int_nil: (int)(*r);		bunfastins(bn, h, &y);		p+= xx; h+=xx;	}bunins_failed:	#line 133 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);	*ret= bn->batCacheid;	BATkey(BATmirror(bn), FALSE);	bn->tsorted = 0;	BBPkeepref(*ret);	BBPreleaseref(b->batCacheid);	return MAL_SUCCEED;#line 187 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"}#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 144 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_void_sht_int(int *ret, int *bid);str CMDconvert_void_sht_int(int *ret, int *bid){	BAT *b,*bn;	sht *p,*q;	int *o;	size_t xx;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.int", "cannot access descriptor");   }#line 151 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_int, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_int, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.int", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 152 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	o= (int*)BUNtail(bn,BUNfirst(bn));	p= (sht*)BUNtail(b,BUNfirst(b));	q= (sht*)BUNtail(b,BUNlast(b));	xx= BUNsize(b);	while(p<q){		*o = *p== sht_nil ?  int_nil: (int) *p;		p= (sht *) ((char*)p+xx); o++;	}	(bn)->batBuns->free += BATcount(b)*sizeof(int);	BATsetcount(bn, BATcount(b));	#line 133 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);	*ret= bn->batCacheid;	BATkey(BATmirror(bn), FALSE);	bn->tsorted = 0;	BBPkeepref(*ret);	BBPreleaseref(b->batCacheid);	return MAL_SUCCEED;#line 163 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"}#line 288 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"#line 297 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 166 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_sht_lng(int *ret, int *bid);str CMDconvert_sht_lng(int *ret, int *bid){	BAT *b,*bn;	size_t xx;	lng y;	char *p, *q, *h;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.lng", "cannot access descriptor");   }#line 173 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_lng, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_lng, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.lng", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 174 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	h= (char*) BUNhead(b,BUNfirst(b));	p= (char*) BUNfirst(b);	q= (char*) BUNlast(b);	xx= BUNsize(b);	while(p<q){		sht *r = (sht*)BUNtail(b,p);		y= (*r == sht_nil) ? lng_nil: (lng)(*r);		bunfastins(bn, h, &y);		p+= xx; h+=xx;	}bunins_failed:	#line 133 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);	*ret= bn->batCacheid;	BATkey(BATmirror(bn), FALSE);	bn->tsorted = 0;	BBPkeepref(*ret);	BBPreleaseref(b->batCacheid);	return MAL_SUCCEED;#line 187 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"}#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 144 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_void_sht_lng(int *ret, int *bid);str CMDconvert_void_sht_lng(int *ret, int *bid){	BAT *b,*bn;	sht *p,*q;	lng *o;	size_t xx;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.lng", "cannot access descriptor");   }#line 151 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_lng, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_lng, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.lng", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 152 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	o= (lng*)BUNtail(bn,BUNfirst(bn));	p= (sht*)BUNtail(b,BUNfirst(b));	q= (sht*)BUNtail(b,BUNlast(b));	xx= BUNsize(b);	while(p<q){		*o = *p== sht_nil ?  lng_nil: (lng) *p;		p= (sht *) ((char*)p+xx); o++;	}	(bn)->batBuns->free += BATcount(b)*sizeof(lng);	BATsetcount(bn, BATcount(b));	#line 133 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);	*ret= bn->batCacheid;	BATkey(BATmirror(bn), FALSE);	bn->tsorted = 0;	BBPkeepref(*ret);	BBPreleaseref(b->batCacheid);	return MAL_SUCCEED;#line 163 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"}#line 288 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"#line 298 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 287 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 166 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"batcast_export str CMDconvert_sht_flt(int *ret, int *bid);str CMDconvert_sht_flt(int *ret, int *bid){	BAT *b,*bn;	size_t xx;	flt y;	char *p, *q, *h;	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	if( ( b= BATdescriptor(*bid)) == NULL ){ ;		 throw(MAL,  "batcalc.flt", "cannot access descriptor");   }#line 173 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"	#line 96 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"    if (BAThvoid(b)) {        bn = BATnew(TYPE_void, TYPE_flt, BATcount(b));        BATseqbase(bn, b->hseqbase);    } else        bn = BATnew(b->htype, TYPE_flt, BATcount(b));	if( bn== NULL) {				throw(MAL, "batcalc.flt", "can not create bat");	}    bn->hsorted = b->hsorted;    bn->tsorted = b->tsorted;#line 174 "/export/scratch0/monet/monet.GNU.64.64.d.14791/MonetDB5/src/modules/kernel/batcast.mx"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -