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

📄 tablet.h

📁 一个内存数据库的源代码这是服务器端还有客户端
💻 H
字号:
#ifndef _TABLET_IO2_H_#define _TABLET_IO2_H_#include <gdk.h>#include "streams.h"#include <mal_exception.h>#include <mal_client.h>#include <mal_interpreter.h>#ifdef WIN32#ifndef LIBTABLET#define tablet_export extern __declspec(dllimport)#else#define tablet_export extern __declspec(dllexport)#endif#else#define tablet_export extern#endiftypedef ptr *(*frStr) (void *extra, int type, char *s, char *e, char quote);typedef int (*toStr) (void *extra, char **buf, int *len, int type, ptr a);typedef struct Column_t {	char *batname;	char *name;		/* column title */	char *sep;	int seplen;	char *type;	int adt;		/* type index */	BAT *c;			/* set to NULL when scalar is meant */	ptr p;	int base;		/* of first tuple */	unsigned int tabs;	/* field size in tab positions */	str lbrk, rbrk;		/* column brackets */	str nullstr;		/* null representation */	int quoted;		/* escape charaters */	unsigned int width;	/* actual column width */	unsigned int maxwidth;	/* permissible width */	int fieldstart;		/* Fixed character field load positions */	int fieldwidth;	int scale, precision;	toStr tostr;	frStr frstr;	void *extra;	void *data;	int len;} Column;typedef struct Table_t {	int signature;	char *sep;		/* default separator */	str ttopbrk, tbotbrk;	/* table brackets */	str rlbrk, rrbrk;	/* row brackets */	str properties;		/* of header to display */	str title, footer;	/* alternatives */	size_t offset;	size_t nr;		/* allocated space for table loads */	size_t pageLimit;	size_t firstrow, lastrow;	/* last window to print */	size_t nr_attrs;	/* attributes found sofar */	size_t max_attrs;	Column *format;		/* remove later */	stream *fd;	BAT *pivot;	unsigned int rowwidth;		/* sum of columns used for mallocs */	Column columns[1];} Tablet;tablet_export BAT *TABLETload(BAT *names, BAT *seps, BAT *types, char *datafile, size_t nr);tablet_export BAT *TABLETinput(BAT *names, BAT *seps, BAT *types, bstream *s, stream *out, size_t nr);tablet_export size_t TABLEToutput(BAT *order, BAT *seps, BAT *bats, stream *s);tablet_export void TABLETdump(BAT *names, BAT *seps, BAT *bats, char *datafile, size_t nr);/* The low level routines are primarilly used by the SQL front-end.*/tablet_export int TABLETcreate_bats(Tablet * as);tablet_export size_t TABLETassign_BATs(Tablet * as, BAT *bats);tablet_export ssize_t TABLETload_file(Tablet * as, bstream *b, stream *out);tablet_export BAT *TABLETcollect_bats(Tablet * as);tablet_export void TABLETdestroy_format(Tablet * as);tablet_export int TABLEToutput_file(Tablet * as, BAT *order, stream *s);tablet_export ptr *TABLETstrFrStr(Column *c, char *s, char *e);tablet_export ptr *TABLETadt_frStr(void *extra, int type, char *s, char *e, char quote);tablet_export int TABLETadt_toStr(void *extra, char **buf, int *len, int type, ptr a);#endif

⌨️ 快捷键说明

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