~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/table_list.cc

  • Committer: Brian Aker
  • Date: 2010-10-06 18:16:00 UTC
  • mto: (1818.1.2 build)
  • mto: This revision was merged to the branch mainline in revision 1819.
  • Revision ID: brian@tangent.org-20101006181600-q7zuzw31zlq030ra
Convert sql_string to use size_t (this should clean up ICC warnings).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Copyright (C) 2009 Sun Microsystems, Inc.
 
1
/* Copyright (C) 2009 Sun Microsystems
2
2
 
3
3
  This program is free software; you can redistribute it and/or modify
4
4
  it under the terms of the GNU General Public License as published by
13
13
  along with this program; if not, write to the Free Software
14
14
  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA */
15
15
 
16
 
#include <config.h>
 
16
#include "config.h"
17
17
 
18
18
#include <string>
19
19
 
20
 
#include <drizzled/error.h>
21
 
#include <drizzled/table_list.h>
22
 
#include <drizzled/item.h>
23
 
#include <drizzled/item/field.h>
24
 
#include <drizzled/nested_join.h>
25
 
#include <drizzled/sql_lex.h>
26
 
#include <drizzled/sql_select.h>
27
 
#include <drizzled/strfunc.h>
 
20
#include "drizzled/error.h"
 
21
#include "drizzled/table_list.h"
 
22
#include "drizzled/item.h"
 
23
#include "drizzled/item/field.h"
 
24
#include "drizzled/nested_join.h"
 
25
#include "drizzled/sql_lex.h"
 
26
#include "drizzled/sql_select.h"
 
27
#include "drizzled/strfunc.h"
28
28
 
29
29
using namespace std;
30
30
 
34
34
class Item;
35
35
class Item_field;
36
36
 
 
37
uint32_t TableList::create_table_def_key(char *key)
 
38
{
 
39
  return TableIdentifier::createKey(key, db, table_name);
 
40
}
 
41
 
37
42
bool TableList::set_insert_values(memory::Root *)
38
43
{
39
44
  if (table)
76
81
TableList *TableList::last_leaf_for_name_resolution()
77
82
{
78
83
  TableList *cur_table_ref= this;
79
 
  NestedJoin *cur_nested_join;
 
84
  nested_join_st *cur_nested_join;
80
85
 
81
86
  if (is_leaf_for_name_resolution())
82
87
    return this;
94
99
    */
95
100
    if ((cur_table_ref->outer_join & JOIN_TYPE_RIGHT))
96
101
    {
97
 
      List<TableList>::iterator it(cur_nested_join->join_list.begin());
 
102
      List_iterator_fast<TableList> it(cur_nested_join->join_list);
98
103
      TableList *next;
99
104
      cur_table_ref= it++;
100
105
      while ((next= it++))
114
119
TableList *TableList::first_leaf_for_name_resolution()
115
120
{
116
121
  TableList *cur_table_ref= NULL;
117
 
  NestedJoin *cur_nested_join;
 
122
  nested_join_st *cur_nested_join;
118
123
 
119
124
  if (is_leaf_for_name_resolution())
120
125
    return this;
124
129
       cur_nested_join;
125
130
       cur_nested_join= cur_table_ref->nested_join)
126
131
  {
127
 
    List<TableList>::iterator it(cur_nested_join->join_list.begin());
 
132
    List_iterator_fast<TableList> it(cur_nested_join->join_list);
128
133
    cur_table_ref= it++;
129
134
    /*
130
135
      If the current nested join is a RIGHT JOIN, the operands in
165
170
    int type;
166
171
    bool have_empty_use_join= false, have_empty_use_order= false,
167
172
         have_empty_use_group= false;
168
 
    List_iterator <Index_hint> iter(index_hints->begin());
 
173
    List_iterator <Index_hint> iter(*index_hints);
169
174
 
170
175
    /* initialize temporary variables used to collect hints of each kind */
171
176
    for (type= INDEX_HINT_IGNORE; type <= INDEX_HINT_FORCE; type++)
309
314
 
310
315
    if (index_hints)
311
316
    {
312
 
      List<Index_hint>::iterator it(index_hints->begin());
 
317
      List_iterator<Index_hint> it(*index_hints);
313
318
      Index_hint *hint;
314
319
 
315
320
      while ((hint= it++))