~drizzle-trunk/drizzle/development

1 by brian
clean slate
1
/* Copyright (C) 2000-2001, 2004 MySQL AB
2
3
   This program is free software; you can redistribute it and/or modify
4
   it under the terms of the GNU General Public License as published by
5
   the Free Software Foundation; version 2 of the License.
6
7
   This program is distributed in the hope that it will be useful,
8
   but WITHOUT ANY WARRANTY; without even the implied warranty of
9
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10
   GNU General Public License for more details.
11
12
   You should have received a copy of the GNU General Public License
13
   along with this program; if not, write to the Free Software
14
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
15
16
17
/* This struct includes all reserved words and functions */
18
19
#ifndef _lex_symbol_h
20
#define _lex_symbol_h
21
22
#include "thr_lock.h"
23
/* A helper type for transactional locking. */
24
struct st_table_lock_info
25
{
26
  thr_lock_type lock_type;
27
  int           lock_timeout;
28
  bool          lock_transactional;
29
};
30
31
struct st_sym_group;
32
33
typedef struct st_symbol {
34
  const char *name;
35
  uint	tok;
36
  uint length;
37
  struct st_sym_group *group;
38
} SYMBOL;
39
40
typedef struct st_lex_symbol
41
{
42
  SYMBOL *symbol;
43
  char   *str;
44
  uint   length;
45
} LEX_SYMBOL;
46
47
typedef struct st_sym_group {
48
  const char *name;
49
  const char *needed_define;
50
} SYM_GROUP;
51
52
extern SYM_GROUP sym_group_common;
53
extern SYM_GROUP sym_group_geom;
54
extern SYM_GROUP sym_group_rtree;
55
56
#endif /* _lex_symbol_h */