MySQL++ Reference Manual

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

# mysqlpp::equal_list_ba< Seq1, Seq2, Manip > Struct Template Reference

Holds two lists of items, typically used to construct a SQL "equals clause". More...

`#include <vallist.h>`

Collaboration diagram for mysqlpp::equal_list_ba< Seq1, Seq2, Manip >:

[legend]
List of all members.

## Public Member Functions
| equal_list_ba (const Seq1 &s1, const Seq2 &s2, const char *d, const char *e, Manip m)
| Create object.
## Public Attributes
const Seq1 * | list1
| the list of objects on the left-hand side of the equals sign
const Seq2 * | list2
| the list of objects on the right-hand side of the equals sign
const char * | delim
| delimiter to use between each pair of elements
const char * | equl
| "equal" sign to use between each item in each equal pair; doesn't have to actually be " = "
Manip | manip
| manipulator to use when inserting the equal_list into a C++ stream

## Detailed Description

### template<class Seq1, class Seq2, class Manip>
struct mysqlpp::equal_list_ba< Seq1, Seq2, Manip >

Holds two lists of items, typically used to construct a SQL "equals clause".

The WHERE clause in a SQL SELECT statment is an example of an equals clause.

Imagine an object of this type contains the lists (a, b) (c, d), and that the object's delimiter and equals symbols are set to ", " and " = " respectively. When you insert that object into a C++ stream, you would get "a = c, b = d".

This class is never instantiated by hand. The equal_list() functions build instances of this structure template to do their work. MySQL++'s SSQLS mechanism calls those functions when building SQL queries; you can call them yourself to do similar work. The "Harnessing SSQLS Internals" section of the user manual has some examples of this.

See also:
  equal_list_b

## Constructor & Destructor Documentation

template<class Seq1, class Seq2, class Manip>

mysqlpp::equal_list_ba< Seq1, Seq2, Manip >::equal_list_ba | ( | const Seq1 & | s1,
|  | const Seq2 & | s2,
|  | const char * | d,
|  | const char * | e,
|  | Manip | m |
| ) |  |  | `[inline]`

Create object.

Parameters:

  | s1 | list of objects on left-hand side of equal sign
  | s2 | list of objects on right-hand side of equal sign
  | d | what delimiter to use between each group in the list when inserting the list into a C++ stream
  | e | the "equals" sign between each pair of items in the equal list; doesn't actually have to be " = "!
  | m | manipulator to use when inserting the list into a C++ stream

The documentation for this struct was generated from the following file:

- vallist.h