28 #if !defined(MYSQLPP_ROW_H)
43 #if !defined(DOXYGEN_IGNORE)
46 class MYSQLPP_EXPORT ResultBase;
70 typedef bool Row::*private_bool_type;
125 data_(r.data_.begin(), r.data_.end()),
126 field_names_(r.field_names_),
127 initialized_(r.initialized_)
138 const unsigned long* lengths,
bool te =
true);
147 const_reference at(size_type i)
const;
157 bool empty()
const {
return data_.empty(); }
169 equal_list(
const char* d =
",",
const char* e =
" = ")
const;
191 template <
class Manip>
193 const char* e, Manip m)
const;
200 field_list(
const char* d =
",")
const;
208 template <
class Manip>
220 template <
class Manip>
222 const std::vector<bool>& vb)
const;
234 const char* d,
const std::vector<bool>& vb)
const;
244 const std::vector<bool>& vb)
const;
253 template <
class Manip>
256 bool t1 =
false,
bool t2 =
false,
bool t3 =
false,
257 bool t4 =
false,
bool t5 =
false,
bool t6 =
false,
258 bool t7 =
false,
bool t8 =
false,
bool t9 =
false,
259 bool ta =
false,
bool tb =
false,
bool tc =
false)
const;
269 const char *d,
bool t0,
270 bool t1 =
false,
bool t2 =
false,
bool t3 =
false,
271 bool t4 =
false,
bool t5 =
false,
bool t6 =
false,
272 bool t7 =
false,
bool t8 =
false,
bool t9 =
false,
273 bool ta =
false,
bool tb =
false,
bool tc =
false)
const;
283 bool t1 =
false,
bool t2 =
false,
bool t3 =
false,
284 bool t4 =
false,
bool t5 =
false,
bool t6 =
false,
285 bool t7 =
false,
bool t8 =
false,
bool t9 =
false,
286 bool ta =
false,
bool tb =
false,
bool tc =
false)
const;
289 size_type field_num(
const char* name)
const;
301 data_.assign(rhs.data_.begin(), rhs.data_.end());
302 field_names_.assign(rhs.field_names_);
303 initialized_ = rhs.initialized_;
314 const_reference operator [](
const char* field)
const;
328 {
return at(
static_cast<size_type>(i)); }
347 operator private_bool_type()
const
349 return data_.size() && initialized_ ? &Row::initialized_ : 0;
371 template <
class Manip>
373 Manip m = quote)
const
384 template <
class Manip>
386 const std::vector<bool>& vb, Manip m = quote)
const
399 const std::vector<bool> &vb)
const
410 template <
class Manip>
412 bool t0,
bool t1 =
false,
bool t2 =
false,
bool t3 =
false,
413 bool t4 =
false,
bool t5 =
false,
bool t6 =
false,
414 bool t7 =
false,
bool t8 =
false,
bool t9 =
false,
415 bool ta =
false,
bool tb =
false,
bool tc =
false)
const
417 std::vector<bool> vb;
418 create_vector(size(), vb, t0, t1, t2, t3, t4, t5, t6,
419 t7, t8, t9, ta, tb, tc);
430 value_list(
const char *d,
bool t0,
bool t1 =
false,
bool t2 =
false,
431 bool t3 =
false,
bool t4 =
false,
bool t5 =
false,
432 bool t6 =
false,
bool t7 =
false,
bool t8 =
false,
433 bool t9 =
false,
bool ta =
false,
bool tb =
false,
434 bool tc =
false)
const
436 std::vector<bool> vb;
437 create_vector(size(), vb, t0, t1, t2, t3, t4, t5, t6,
438 t7, t8, t9, ta, tb, tc);
449 bool t1 =
false,
bool t2 =
false,
bool t3 =
false,
450 bool t4 =
false,
bool t5 =
false,
bool t6 =
false,
451 bool t7 =
false,
bool t8 =
false,
bool t9 =
false,
452 bool ta =
false,
bool tb =
false,
bool tc =
false)
const
454 std::vector<bool> vb;
455 create_vector(size(), vb, t0, t1, t2, t3, t4, t5, t6,
456 t7, t8, t9, ta, tb, tc);
466 template <
class Manip>
468 std::string s0, std::string s1 =
"", std::string s2 =
"",
469 std::string s3 =
"", std::string s4 =
"",
470 std::string s5 =
"", std::string s6 =
"",
471 std::string s7 =
"", std::string s8 =
"",
472 std::string s9 =
"", std::string sa =
"",
473 std::string sb =
"", std::string sc =
"")
const
475 std::vector<bool> vb;
476 create_vector(*
this, vb, s0, s1, s2, s3, s4, s5, s6, s7, s8,
489 std::string s0, std::string s1 =
"", std::string s2 =
"",
490 std::string s3 =
"", std::string s4 =
"",
491 std::string s5 =
"", std::string s6 =
"",
492 std::string s7 =
"", std::string s8 =
"",
493 std::string s9 =
"", std::string sa =
"",
494 std::string sb =
"", std::string sc =
"")
const
496 std::vector<bool> vb;
497 create_vector(*
this, vb, s0, s1, s2, s3, s4, s5, s6, s7, s8,
510 std::string s1 =
"", std::string s2 =
"",
511 std::string s3 =
"", std::string s4 =
"",
512 std::string s5 =
"", std::string s6 =
"",
513 std::string s7 =
"", std::string s8 =
"",
514 std::string s9 =
"", std::string sa =
"",
515 std::string sb =
"", std::string sc =
"")
const
517 std::vector<bool> vb;
518 create_vector(*
this, vb, s0, s1, s2, s3, s4, s5, s6, s7, s8,
Interface allowing a class to have optional exceptions.
Definition: noexceptions.h:72
Creates an object that acts as a reference-counted pointer to another object.
Definition: refcounted.h:83
Base class for StoreQueryResult and UseQueryResult.
Definition: result.h:111
Manages rows from a result set.
Definition: row.h:64
~Row()
Destroy object.
Definition: row.h:141
const_reverse_iterator reverse_iterator
mutable reverse iterator type
Definition: row.h:108
std::vector< String > list_type
type of our internal data list
Definition: row.h:77
const_reverse_iterator rbegin() const
Return reverse iterator pointing to first element in the container.
Definition: row.h:354
const_iterator iterator
iterator type
Definition: row.h:97
list_type::const_reverse_iterator const_reverse_iterator
const reverse iterator type
Definition: row.h:86
value_list_b< Row, quote_type0 > value_list(std::string s0, std::string s1="", std::string s2="", std::string s3="", std::string s4="", std::string s5="", std::string s6="", std::string s7="", std::string s8="", std::string s9="", std::string sa="", std::string sb="", std::string sc="") const
Get a list of the values in this row.
Definition: row.h:508
list_type::size_type size_type
type of returned sizes
Definition: row.h:111
value_list_ba< Row, Manip > value_list(const char *d=",", Manip m=quote) const
Get a list of the values in this row.
Definition: row.h:372
const_iterator begin() const
Return a const iterator pointing to first element in the container.
Definition: row.h:154
list_type::value_type value_type
type of data in container
Definition: row.h:114
Row(const Row &r)
Copy constructor.
Definition: row.h:123
value_list_b< Row, Manip > value_list(const char *d, Manip m, bool t0, bool t1=false, bool t2=false, bool t3=false, bool t4=false, bool t5=false, bool t6=false, bool t7=false, bool t8=false, bool t9=false, bool ta=false, bool tb=false, bool tc=false) const
Get a list of the values in this row.
Definition: row.h:411
list_type::difference_type difference_type
type for index differences
Definition: row.h:89
list_type::const_reference const_reference
constant reference type
Definition: row.h:83
value_list_b< Row, quote_type0 > value_list(const std::vector< bool > &vb) const
Get a list of the values in this row.
Definition: row.h:398
value_list_b< Row, Manip > value_list(const char *d, Manip m, std::string s0, std::string s1="", std::string s2="", std::string s3="", std::string s4="", std::string s5="", std::string s6="", std::string s7="", std::string s8="", std::string s9="", std::string sa="", std::string sb="", std::string sc="") const
Get a list of the values in this row.
Definition: row.h:467
const_iterator end() const
Return a const iterator pointing to one past the last element in the container.
Definition: row.h:161
Row()
Default constructor.
Definition: row.h:117
size_type size() const
Get the number of fields in the row.
Definition: row.h:361
list_type::const_iterator const_iterator
constant iterator type
Definition: row.h:80
value_list_b< Row, Manip > value_list(const char *d, const std::vector< bool > &vb, Manip m=quote) const
Get a list of the values in this row.
Definition: row.h:385
const_reference back() const
Get a reference to the last element of the vector.
Definition: row.h:150
value_list_b< Row, quote_type0 > value_list(const char *d, std::string s0, std::string s1="", std::string s2="", std::string s3="", std::string s4="", std::string s5="", std::string s6="", std::string s7="", std::string s8="", std::string s9="", std::string sa="", std::string sb="", std::string sc="") const
Get a list of the values in this row.
Definition: row.h:487
value_list_b< Row, quote_type0 > value_list(const char *d, bool t0, bool t1=false, bool t2=false, bool t3=false, bool t4=false, bool t5=false, bool t6=false, bool t7=false, bool t8=false, bool t9=false, bool ta=false, bool tb=false, bool tc=false) const
Get a list of the values in this row.
Definition: row.h:430
const_reference front() const
Get a reference to the first element of the vector.
Definition: row.h:292
size_type max_size() const
Return maximum number of elements that can be stored in container without resizing.
Definition: row.h:296
value_list_b< Row, quote_type0 > value_list(bool t0, bool t1=false, bool t2=false, bool t3=false, bool t4=false, bool t5=false, bool t6=false, bool t7=false, bool t8=false, bool t9=false, bool ta=false, bool tb=false, bool tc=false) const
Get a list of the values in this row.
Definition: row.h:448
const_reference reference
reference type
Definition: row.h:102
const_reverse_iterator rend() const
Return reverse iterator pointing to one past the last element in the container.
Definition: row.h:358
bool empty() const
Returns true if container is empty.
Definition: row.h:157
This file includes top-level definitions for use both internal to the library, and outside it....
@ quote
insert into a Query stream to single-quote and escape next item
Definition: manip.h:72
Declares String class, MySQL++'s generic std::string-like class, used for holding data received from ...
Declares interface that allows exceptions to be optional.
Declares the RefCountedPointer template.
Holds two lists of items, typically used to construct a SQL "equals clause".
Definition: vallist.h:61
Same as value_list_ba, plus the option to have some elements of the list suppressed.
Definition: vallist.h:227
Holds a list of items, typically used to construct a SQL "value list".
Definition: vallist.h:187
Declares templates for holding lists of values.
equal_list_ba< Seq1, Seq2, do_nothing_type0 > equal_list(const Seq1 &s1, const Seq2 &s2, const char *d=",", const char *e=" = ")
Constructs an equal_list_ba.
Definition: vallist.h:553