~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_lex.h

  • Committer: Mark Atwood
  • Date: 2011-08-21 06:56:57 UTC
  • mfrom: (2385.3.34 rf)
  • Revision ID: me@mark.atwood.name-20110821065657-vk2at03z9u17mf1d
mergeĀ lp:~olafvdspek/drizzle/refactor7

Show diffs side-by-side

added added

removed removed

Lines of Context:
361
361
                     select_result_interceptor *old_result);
362
362
  void set_limit(Select_Lex *values);
363
363
  void set_session(Session *session_arg) { session= session_arg; }
364
 
  inline bool is_union ();
 
364
  inline bool is_union();
365
365
 
366
 
  friend void lex_start(Session *session);
 
366
  friend void lex_start(Session*);
367
367
 
368
368
  List<Item> *get_unit_column_types();
369
369
};
371
371
/*
372
372
  Select_Lex - store information of parsed SELECT statment
373
373
*/
374
 
class Select_Lex: public Select_Lex_Node
 
374
class Select_Lex : public Select_Lex_Node
375
375
{
376
376
public:
377
377
 
614
614
  }
615
615
  bool test_limit();
616
616
 
617
 
  friend void lex_start(Session *session);
 
617
  friend void lex_start(Session*);
618
618
  void make_empty_select()
619
619
  {
620
620
    init_query();
643
643
   Add a index hint to the tagged list of hints. The type and clause of the
644
644
   hint will be the current ones (set by set_index_hint())
645
645
  */
646
 
  void add_index_hint(Session *session, char *str, uint32_t length);
 
646
  void add_index_hint(Session*, const char*);
647
647
 
648
648
  /* make a list to hold index hints */
649
649
  void alloc_index_hints (Session *session);
650
650
  /* read and clear the index hints */
651
 
  List<Index_hint>* pop_index_hints(void)
 
651
  List<Index_hint>* pop_index_hints()
652
652
  {
653
653
    List<Index_hint> *hints= index_hints;
654
654
    index_hints= NULL;
655
655
    return hints;
656
656
  }
657
657
 
658
 
  void clear_index_hints(void) { index_hints= NULL; }
 
658
  void clear_index_hints() { index_hints= NULL; }
659
659
 
660
660
private:
661
661
  /* current index hint kind. used in filling up index_hints */
665
665
  List<Index_hint> *index_hints;
666
666
};
667
667
 
668
 
inline bool Select_Lex_Unit::is_union ()
 
668
inline bool Select_Lex_Unit::is_union()
669
669
{
670
 
  return first_select()->next_select() &&
671
 
    first_select()->next_select()->linkage == UNION_TYPE;
 
670
  return first_select()->next_select() && first_select()->next_select()->linkage == UNION_TYPE;
672
671
}
673
672
 
674
673
enum xa_option_words
675
674
{
676
 
  XA_NONE
677
 
, XA_JOIN
678
 
, XA_RESUME
679
 
, XA_ONE_PHASE
680
 
, XA_SUSPEND
681
 
, XA_FOR_MIGRATE
 
675
  XA_NONE,
 
676
  XA_JOIN,
 
677
  XA_RESUME,
 
678
  XA_ONE_PHASE,
 
679
  XA_SUSPEND,
 
680
  XA_FOR_MIGRATE
682
681
};
683
682
 
684
683
/*
706
705
  */
707
706
  TableList **query_tables_own_last;
708
707
 
709
 
  /*
710
 
    These constructor and destructor serve for creation/destruction
711
 
    of Query_tables_list instances which are used as backup storage.
712
 
  */
713
 
  // Query_tables_list() {}
714
 
 
715
708
  /* Initializes (or resets) Query_tables_list object for "real" use. */
716
709
  void reset_query_tables_list(bool init);
717
710