summaryrefslogtreecommitdiff
path: root/storage/connect/plgdbsem.h
diff options
context:
space:
mode:
authorOlivier Bertrand <bertrandop@gmail.com>2014-03-10 12:21:17 +0100
committerOlivier Bertrand <bertrandop@gmail.com>2014-03-10 12:21:17 +0100
commit85e8aee47d2e1cc58857148293f84ccd7e2ec620 (patch)
tree078efdcf3dfa65b84a05353645276dc1d3b07bc5 /storage/connect/plgdbsem.h
parent126bb34513f34eba97598d2357bfc1c2fbf594b4 (diff)
downloadmariadb-git-85e8aee47d2e1cc58857148293f84ccd7e2ec620.tar.gz
- Temporary
modified: storage/connect/catalog.h storage/connect/colblk.cpp storage/connect/colblk.h storage/connect/connect.cc storage/connect/filamap.cpp storage/connect/filamfix.cpp storage/connect/filamfix.h storage/connect/filamtxt.cpp storage/connect/filamvct.cpp storage/connect/filamzip.cpp storage/connect/filamzip.h storage/connect/ha_connect.cc storage/connect/ha_connect.h storage/connect/plgdbsem.h storage/connect/plgdbutl.cpp storage/connect/reldef.cpp storage/connect/reldef.h storage/connect/tabdos.cpp storage/connect/tabdos.h storage/connect/tabfix.cpp storage/connect/tabfix.h storage/connect/tabfmt.cpp storage/connect/tabfmt.h storage/connect/table.cpp storage/connect/tabmac.h storage/connect/tabmul.h storage/connect/tabmysql.cpp storage/connect/tabodbc.cpp storage/connect/tabsys.cpp storage/connect/tabsys.h storage/connect/tabtbl.cpp storage/connect/tabtbl.h storage/connect/tabvct.cpp storage/connect/tabvct.h storage/connect/tabwmi.cpp storage/connect/tabwmi.h storage/connect/tabxml.cpp storage/connect/tabxml.h storage/connect/valblk.cpp storage/connect/valblk.h storage/connect/value.cpp storage/connect/value.h storage/connect/xobject.cpp storage/connect/xobject.h storage/connect/xtable.h
Diffstat (limited to 'storage/connect/plgdbsem.h')
-rw-r--r--storage/connect/plgdbsem.h55
1 files changed, 47 insertions, 8 deletions
diff --git a/storage/connect/plgdbsem.h b/storage/connect/plgdbsem.h
index e251ded13df..99e9fb8fb08 100644
--- a/storage/connect/plgdbsem.h
+++ b/storage/connect/plgdbsem.h
@@ -29,6 +29,10 @@ enum BLKTYP {TYPE_TABLE = 50, /* Table Name/Srcdef/... Block */
// TYPE_OPVAL = 52, /* Operator value (OPVAL) */
TYPE_TDB = 53, /* Table Description Block */
TYPE_COLBLK = 54, /* Column Description Block */
+#if defined(BLK_INDX)
+ TYPE_FILTER = 55, /* Filter Description Block */
+ TYPE_ARRAY = 63, /* General array type */
+#endif // BLK_INDX
TYPE_PSZ = 64, /* Pointer to String ended by 0 */
TYPE_SQL = 65, /* Pointer to SQL block */
TYPE_XOBJECT = 69, /* Extended DB object */
@@ -144,21 +148,19 @@ enum RECFM {RECFM_NAF = -2, /* Not a file */
RECFM_PLG = 5, /* Table accessed via PLGconn */
RECFM_DBF = 6}; /* DBase formatted file */
-#if 0
enum MISC {DB_TABNO = 1, /* DB routines in Utility Table */
MAX_MULT_KEY = 10, /* Max multiple key number */
NAM_LEN = 128, /* Length of col and tab names */
ARRAY_SIZE = 50, /* Default array block size */
- MAXRES = 500, /* Default maximum result lines */
- MAXLIN = 10000, /* Default maximum data lines */
+// MAXRES = 500, /* Default maximum result lines */
+// MAXLIN = 10000, /* Default maximum data lines */
MAXBMP = 32}; /* Default XDB2 max bitmap size */
+#if 0
enum ALGMOD {AMOD_AUTO = 0, /* PLG chooses best algorithm */
AMOD_SQL = 1, /* Use SQL algorithm */
AMOD_QRY = 2}; /* Use QUERY algorithm */
-#else // !0
-#define NAM_LEN 128
-#endif // !0
+#endif // 0
enum MODE {MODE_ERROR = -1, /* Invalid mode */
MODE_ANY = 0, /* Unspecified mode */
@@ -342,7 +344,7 @@ typedef class XTAB *PTABLE;
typedef class COLUMN *PCOLUMN;
typedef class XOBJECT *PXOB;
typedef class COLBLK *PCOL;
-typedef class TBX *PTBX;
+//pedef class TBX *PTBX;
typedef class TDB *PTDB;
typedef void *PSQL; // Not used
typedef class TDBASE *PTDBASE;
@@ -376,6 +378,9 @@ typedef class COLDEF *PCOLDEF;
typedef class CONSTANT *PCONST;
typedef class VALUE *PVAL;
typedef class VALBLK *PVBLK;
+#if defined(BLK_INDX)
+typedef class FILTER *PFIL;
+#endif // BLK_INDX
typedef struct _fblock *PFBLOCK;
typedef struct _mblock *PMBLOCK;
@@ -431,7 +436,9 @@ typedef struct { /* User application block */
//int Maxres; /* Result Max nb of lines */
//int Maxtmp; /* Intermediate tables Maxres */
//int Maxlin; /* Query Max nb of data lines */
-//int Maxbmp; /* Maximum XDB2 bitmap size */
+#if defined(BLK_INDX)
+ int Maxbmp; /* Maximum XDB2 bitmap size */
+#endif // BLK_INDX
int Check; /* General level of checking */
int Numlines; /* Number of lines involved */
//ALGMOD AlgChoice; /* Choice of algorithm mode */
@@ -481,6 +488,38 @@ typedef struct _tabs {
PTABADR P3;
} TABS;
+#if defined(BLK_INDX)
+/***********************************************************************/
+/* Argument of expression, function, filter etc. (Xobject) */
+/***********************************************************************/
+typedef struct _arg { /* Argument */
+ PXOB To_Obj; /* To the argument object */
+ PVAL Value; /* Argument value */
+ bool Conv; /* TRUE if conversion is required */
+ } ARGBLK, *PARG;
+
+typedef struct _oper { /* Operator */
+ PSZ Name; /* The input/output operator name */
+ OPVAL Val; /* Operator numeric value */
+ int Mod; /* The modificator */
+ } OPER, *POPER;
+
+#if 0
+/***********************************************************************/
+/* Definitions and table of Scalar Functions. */
+/***********************************************************************/
+typedef struct _sfdsc { /* Scalar function description block*/
+ char Name[16]; /* Scalar function name */
+ EVAL EvalType; /* Type of Init and Eval functions */
+ OPVAL Op; /* Equivalent operator number */
+ int R_Type; /* Result Type */
+ int R_Length; /* Result Length */
+ int R_Prec; /* Result Precision */
+ int Numarg; /* Number of arguments */
+ } SFDSC, *PSFDSC;
+#endif // 0
+#endif // BLK_INDX
+
/***********************************************************************/
/* Following definitions are used to define table fields (columns). */
/***********************************************************************/