rdbModel::InterRow Class Reference

#include <InterRow.h>

List of all members.

Public Member Functions

 InterRow (Table *table, Query *query=0, bool quit=true)
void addSet (const Set &set)
const std::vector< Set > & getSets () const
const QuerygetQuery () const
bool getQuit () const
const TablegetTable () const
 ~InterRow ()
Visitor::VisitorState accept (Visitor *v)

Private Attributes

Tablem_myTable
std::vector< Setm_sets
Querym_query
bool m_quit


Detailed Description

InterRow is a class to describe interrow conditions between a proposed row and existing rows, and, if found, what action to take

Definition at line 18 of file InterRow.h.


Constructor & Destructor Documentation

rdbModel::InterRow::InterRow ( Table table,
Query query = 0,
bool  quit = true 
)

Definition at line 9 of file InterRow.cxx.

References m_sets.

00010     : m_myTable(table), m_query(query), m_quit(quit) {
00011     m_sets.clear();
00012   }

rdbModel::InterRow::~InterRow (  ) 

Normally, operator associated with the assertion will be deleted when the assertion itself is deleted, but this won't happen if keepOp is set to true.

Definition at line 14 of file InterRow.cxx.

References m_query, and m_sets.

00014                       {
00015     delete m_query;
00016 
00017     // Don't know yet whether anything more needs to be done here
00018     m_sets.clear();
00019   }    


Member Function Documentation

Visitor::VisitorState rdbModel::InterRow::accept ( Visitor v  ) 

Definition at line 26 of file InterRow.cxx.

References genRecEmupikp::i, m_sets, v, rdbModel::Visitor::VBRANCHDONE, and rdbModel::Visitor::VCONTINUE.

00026                                                  {
00027     Visitor::VisitorState state = v->visitInterRow(this);
00028     if (state == Visitor::VBRANCHDONE) return Visitor::VCONTINUE;
00029 
00030     unsigned n = m_sets.size();
00031     for (unsigned i = 0; i < n; i++) {
00032       state = m_sets[i].accept(v);
00033       if (state != Visitor::VCONTINUE) return state;
00034     }
00035     return state;
00036   }

void rdbModel::InterRow::addSet ( const Set set  ) 

Definition at line 21 of file InterRow.cxx.

References m_sets, and eformat::write::set().

Referenced by rdbModel::XercesBuilder::buildInterRow().

00021                                       {
00022     m_sets.push_back(set);
00023   }

const Query* rdbModel::InterRow::getQuery (  )  const [inline]

Definition at line 24 of file InterRow.h.

References m_query.

00024 {return m_query;}

bool rdbModel::InterRow::getQuit (  )  const [inline]

Definition at line 25 of file InterRow.h.

References m_quit.

00025 {return m_quit;}

const std::vector<Set>& rdbModel::InterRow::getSets (  )  const [inline]

Definition at line 23 of file InterRow.h.

References m_sets.

00023 {return m_sets;}

const Table* rdbModel::InterRow::getTable (  )  const [inline]

Definition at line 26 of file InterRow.h.

References m_myTable.

00026 {return m_myTable;}


Member Data Documentation

Table* rdbModel::InterRow::m_myTable [private]

Definition at line 40 of file InterRow.h.

Referenced by getTable().

Query* rdbModel::InterRow::m_query [private]

Definition at line 43 of file InterRow.h.

Referenced by getQuery(), and ~InterRow().

bool rdbModel::InterRow::m_quit [private]

Definition at line 44 of file InterRow.h.

Referenced by getQuit().

std::vector<Set> rdbModel::InterRow::m_sets [private]

Definition at line 42 of file InterRow.h.

Referenced by accept(), addSet(), getSets(), InterRow(), and ~InterRow().


Generated on Tue Nov 29 23:36:36 2016 for BOSS_7.0.2 by  doxygen 1.4.7