You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
clang format apply
This commit is contained in:
@ -16,10 +16,10 @@
|
||||
MA 02110-1301, USA. */
|
||||
|
||||
/***********************************************************************
|
||||
* $Id: tabledef.cpp 9210 2013-01-21 14:10:42Z rdempsey $
|
||||
*
|
||||
*
|
||||
***********************************************************************/
|
||||
* $Id: tabledef.cpp 9210 2013-01-21 14:10:42Z rdempsey $
|
||||
*
|
||||
*
|
||||
***********************************************************************/
|
||||
|
||||
#include <iostream>
|
||||
#define DDLPKG_DLLEXPORT
|
||||
@ -30,293 +30,252 @@ namespace ddlpackage
|
||||
{
|
||||
using namespace std;
|
||||
|
||||
|
||||
TableDef::~TableDef()
|
||||
{
|
||||
{
|
||||
ColumnDefList::iterator itr;
|
||||
|
||||
for (itr = fColumns.begin(); itr != fColumns.end(); itr++)
|
||||
{
|
||||
ColumnDefList::iterator itr;
|
||||
|
||||
for (itr = fColumns.begin(); itr != fColumns.end(); itr++)
|
||||
{
|
||||
delete *itr;
|
||||
}
|
||||
delete *itr;
|
||||
}
|
||||
}
|
||||
{
|
||||
TableConstraintDefList::iterator itr;
|
||||
|
||||
for (itr = fConstraints.begin(); itr != fConstraints.end(); itr++)
|
||||
{
|
||||
TableConstraintDefList::iterator itr;
|
||||
|
||||
for (itr = fConstraints.begin(); itr != fConstraints.end(); itr++)
|
||||
{
|
||||
delete *itr;
|
||||
}
|
||||
delete *itr;
|
||||
}
|
||||
}
|
||||
|
||||
delete fQualifiedName;
|
||||
delete fQualifiedName;
|
||||
}
|
||||
|
||||
|
||||
TableDef::TableDef(QualifiedName* name, TableElementList* elements, TableOptionMap* options) :
|
||||
fQualifiedName(name)
|
||||
TableDef::TableDef(QualifiedName* name, TableElementList* elements, TableOptionMap* options)
|
||||
: fQualifiedName(name)
|
||||
{
|
||||
if (options)
|
||||
if (options)
|
||||
{
|
||||
fOptions = *options;
|
||||
delete options;
|
||||
}
|
||||
|
||||
ColumnDef* column;
|
||||
TableConstraintDef* constraint;
|
||||
|
||||
/* When parsing, it is necessary to collect ColumnDefs and
|
||||
TableConstraintDefs as TableElements. Here we separate
|
||||
them out into separately typed lists.
|
||||
*/
|
||||
TableElementList::iterator itr;
|
||||
|
||||
for (itr = elements->begin(); itr != elements->end(); ++itr)
|
||||
{
|
||||
column = dynamic_cast<ColumnDef*>(*itr);
|
||||
|
||||
if (column)
|
||||
{
|
||||
fOptions = *options;
|
||||
delete options;
|
||||
fColumns.push_back(column);
|
||||
}
|
||||
|
||||
ColumnDef* column;
|
||||
TableConstraintDef* constraint;
|
||||
|
||||
/* When parsing, it is necessary to collect ColumnDefs and
|
||||
TableConstraintDefs as TableElements. Here we separate
|
||||
them out into separately typed lists.
|
||||
*/
|
||||
TableElementList::iterator itr;
|
||||
|
||||
for (itr = elements->begin(); itr != elements->end(); ++itr)
|
||||
else
|
||||
{
|
||||
column = dynamic_cast<ColumnDef*>(*itr);
|
||||
constraint = dynamic_cast<TableConstraintDef*>(*itr);
|
||||
|
||||
if (column)
|
||||
{
|
||||
fColumns.push_back(column);
|
||||
}
|
||||
else
|
||||
{
|
||||
constraint = dynamic_cast<TableConstraintDef*>(*itr);
|
||||
|
||||
if (constraint)
|
||||
{
|
||||
fConstraints.push_back(constraint);
|
||||
}
|
||||
}
|
||||
if (constraint)
|
||||
{
|
||||
fConstraints.push_back(constraint);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
delete elements;
|
||||
delete elements;
|
||||
}
|
||||
|
||||
|
||||
/** \brief Put to ostream. */
|
||||
ostream& operator<<(ostream& os, const TableDef& tableDef)
|
||||
{
|
||||
os << "CreateTable ";
|
||||
os << "CreateTable ";
|
||||
|
||||
if (tableDef.fQualifiedName->fSchema != "")
|
||||
//cout << tableDef.fQualifiedName->fSchema << ".";
|
||||
os << tableDef.fQualifiedName->fName
|
||||
<< " " << tableDef.fConstraints.size()
|
||||
<< " table constraints"
|
||||
<< endl;
|
||||
if (tableDef.fQualifiedName->fSchema != "")
|
||||
// cout << tableDef.fQualifiedName->fSchema << ".";
|
||||
os << tableDef.fQualifiedName->fName << " " << tableDef.fConstraints.size() << " table constraints"
|
||||
<< endl;
|
||||
|
||||
{
|
||||
ColumnDefList::const_iterator itr;
|
||||
|
||||
for (itr = tableDef.fColumns.begin(); itr != tableDef.fColumns.end(); ++itr)
|
||||
{
|
||||
ColumnDefList::const_iterator itr;
|
||||
|
||||
for (itr = tableDef.fColumns.begin();
|
||||
itr != tableDef.fColumns.end(); ++itr)
|
||||
{
|
||||
ColumnDef* col = *itr;
|
||||
os << *col << endl;
|
||||
}
|
||||
ColumnDef* col = *itr;
|
||||
os << *col << endl;
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
TableConstraintDefList::const_iterator itr;
|
||||
|
||||
for (itr = tableDef.fConstraints.begin(); itr != tableDef.fConstraints.end(); ++itr)
|
||||
{
|
||||
TableConstraintDefList::const_iterator itr;
|
||||
|
||||
for (itr = tableDef.fConstraints.begin();
|
||||
itr != tableDef.fConstraints.end();
|
||||
++itr)
|
||||
{
|
||||
os << (**itr);
|
||||
}
|
||||
os << (**itr);
|
||||
}
|
||||
}
|
||||
|
||||
pair<string, string> oval;
|
||||
pair<string, string> oval;
|
||||
TableOptionMap::const_iterator oitr;
|
||||
os << "Table Options" << endl;
|
||||
|
||||
if (!tableDef.fOptions.empty())
|
||||
{
|
||||
TableOptionMap::const_iterator oitr;
|
||||
os << "Table Options" << endl;
|
||||
|
||||
if (!tableDef.fOptions.empty())
|
||||
for (oitr = tableDef.fOptions.begin(); oitr != tableDef.fOptions.end(); ++oitr)
|
||||
{
|
||||
TableOptionMap::const_iterator oitr;
|
||||
|
||||
for (oitr = tableDef.fOptions.begin();
|
||||
oitr != tableDef.fOptions.end(); ++oitr)
|
||||
{
|
||||
oval = *oitr;
|
||||
os << " " << oval.first << "=" << oval.second << endl;
|
||||
}
|
||||
oval = *oitr;
|
||||
os << " " << oval.first << "=" << oval.second << endl;
|
||||
}
|
||||
}
|
||||
|
||||
return os;
|
||||
return os;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
ostream& operator<<(ostream& os, const TableConstraintDef& constraint)
|
||||
{
|
||||
return constraint.put(os);
|
||||
return constraint.put(os);
|
||||
}
|
||||
|
||||
std::ostream& TableConstraintDef::put(std::ostream& os) const
|
||||
{
|
||||
os << "No!!!" << endl;
|
||||
os << "No!!!" << endl;
|
||||
|
||||
return os;
|
||||
return os;
|
||||
}
|
||||
|
||||
|
||||
TableConstraintDef::TableConstraintDef(DDL_CONSTRAINTS cType) :
|
||||
fConstraintType(cType)
|
||||
TableConstraintDef::TableConstraintDef(DDL_CONSTRAINTS cType) : fConstraintType(cType)
|
||||
{
|
||||
}
|
||||
|
||||
TableConstraintDef::TableConstraintDef() :
|
||||
fConstraintType(DDL_INVALID_CONSTRAINT)
|
||||
TableConstraintDef::TableConstraintDef() : fConstraintType(DDL_INVALID_CONSTRAINT)
|
||||
{
|
||||
}
|
||||
|
||||
TableCheckConstraintDef::TableCheckConstraintDef(const char* check) :
|
||||
TableConstraintDef(DDL_CHECK),
|
||||
fCheck(check)
|
||||
TableCheckConstraintDef::TableCheckConstraintDef(const char* check)
|
||||
: TableConstraintDef(DDL_CHECK), fCheck(check)
|
||||
{
|
||||
}
|
||||
std::ostream& TableCheckConstraintDef::put(std::ostream& os) const
|
||||
{
|
||||
os << "Constraint: "
|
||||
<< ConstraintString[fConstraintType] << " ";
|
||||
os << "\"" << fCheck << "\"";
|
||||
os << endl;
|
||||
os << "Constraint: " << ConstraintString[fConstraintType] << " ";
|
||||
os << "\"" << fCheck << "\"";
|
||||
os << endl;
|
||||
|
||||
return os;
|
||||
return os;
|
||||
}
|
||||
|
||||
|
||||
TableUniqueConstraintDef::TableUniqueConstraintDef(ColumnNameList* columns) :
|
||||
TableConstraintDef(DDL_UNIQUE),
|
||||
fColumnNameList(*columns)
|
||||
TableUniqueConstraintDef::TableUniqueConstraintDef(ColumnNameList* columns)
|
||||
: TableConstraintDef(DDL_UNIQUE), fColumnNameList(*columns)
|
||||
{
|
||||
delete columns;
|
||||
delete columns;
|
||||
}
|
||||
std::ostream& TableUniqueConstraintDef::put(std::ostream& os) const
|
||||
{
|
||||
os << "Constraint: "
|
||||
<< fName << " "
|
||||
<< ConstraintString[fConstraintType] << " ";
|
||||
os << "Constraint: " << fName << " " << ConstraintString[fConstraintType] << " ";
|
||||
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << "(";
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << "(";
|
||||
|
||||
for (itr = fColumnNameList.begin();
|
||||
itr != fColumnNameList.end();
|
||||
++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
for (itr = fColumnNameList.begin(); itr != fColumnNameList.end(); ++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
|
||||
os << ")";
|
||||
return os;
|
||||
os << ")";
|
||||
return os;
|
||||
}
|
||||
|
||||
TablePrimaryKeyConstraintDef::TablePrimaryKeyConstraintDef(ColumnNameList* columns) :
|
||||
TableConstraintDef(DDL_PRIMARY_KEY),
|
||||
fColumnNameList(*columns)
|
||||
TablePrimaryKeyConstraintDef::TablePrimaryKeyConstraintDef(ColumnNameList* columns)
|
||||
: TableConstraintDef(DDL_PRIMARY_KEY), fColumnNameList(*columns)
|
||||
{
|
||||
delete columns;
|
||||
delete columns;
|
||||
}
|
||||
std::ostream& TablePrimaryKeyConstraintDef::put(std::ostream& os) const
|
||||
{
|
||||
os << "Constraint: "
|
||||
<< fName << " "
|
||||
<< ConstraintString[fConstraintType] << " ";
|
||||
os << "Constraint: " << fName << " " << ConstraintString[fConstraintType] << " ";
|
||||
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << "(";
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << "(";
|
||||
|
||||
for (itr = fColumnNameList.begin();
|
||||
itr != fColumnNameList.end();
|
||||
++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
for (itr = fColumnNameList.begin(); itr != fColumnNameList.end(); ++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
|
||||
os << ")";
|
||||
os << ")";
|
||||
|
||||
return os;
|
||||
return os;
|
||||
}
|
||||
|
||||
TableReferencesConstraintDef::TableReferencesConstraintDef
|
||||
(ColumnNameList* columns,
|
||||
QualifiedName* tableName,
|
||||
ColumnNameList* foreignColumns,
|
||||
DDL_MATCH_TYPE matchType,
|
||||
ReferentialAction* refAction) :
|
||||
TableConstraintDef(DDL_REFERENCES),
|
||||
fColumns(*columns),
|
||||
fTableName(tableName),
|
||||
fForeignColumns(*foreignColumns),
|
||||
fMatchType(matchType),
|
||||
fRefAction(refAction)
|
||||
TableReferencesConstraintDef::TableReferencesConstraintDef(ColumnNameList* columns, QualifiedName* tableName,
|
||||
ColumnNameList* foreignColumns,
|
||||
DDL_MATCH_TYPE matchType,
|
||||
ReferentialAction* refAction)
|
||||
: TableConstraintDef(DDL_REFERENCES)
|
||||
, fColumns(*columns)
|
||||
, fTableName(tableName)
|
||||
, fForeignColumns(*foreignColumns)
|
||||
, fMatchType(matchType)
|
||||
, fRefAction(refAction)
|
||||
{
|
||||
delete columns;
|
||||
delete foreignColumns;
|
||||
delete columns;
|
||||
delete foreignColumns;
|
||||
}
|
||||
std::ostream& TableReferencesConstraintDef::put(std::ostream& os) const
|
||||
{
|
||||
os << "Constraint: "
|
||||
<< fName << " "
|
||||
<< ConstraintString[fConstraintType] << " ";
|
||||
os << "Constraint: " << fName << " " << ConstraintString[fConstraintType] << " ";
|
||||
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << "lcols (";
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << "lcols (";
|
||||
|
||||
for (itr = fColumns.begin();
|
||||
itr != fColumns.end();
|
||||
++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
for (itr = fColumns.begin(); itr != fColumns.end(); ++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
|
||||
os << ")";
|
||||
os << ")";
|
||||
|
||||
os << " ftable=" << *fTableName;
|
||||
os << " ftable=" << *fTableName;
|
||||
|
||||
os << " ";
|
||||
os << " ";
|
||||
|
||||
os << "fcols (";
|
||||
os << "fcols (";
|
||||
|
||||
for (itr = fForeignColumns.begin();
|
||||
itr != fForeignColumns.end();
|
||||
++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
for (itr = fForeignColumns.begin(); itr != fForeignColumns.end(); ++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
|
||||
os << ")";
|
||||
os << ")";
|
||||
|
||||
return os;
|
||||
return os;
|
||||
}
|
||||
std::ostream& operator<<(std::ostream& os, const ColumnNameList& columnNames)
|
||||
{
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << '(';
|
||||
ColumnNameList::const_iterator itr;
|
||||
os << '(';
|
||||
|
||||
for (itr = columnNames.begin();
|
||||
itr != columnNames.end();
|
||||
++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
for (itr = columnNames.begin(); itr != columnNames.end(); ++itr)
|
||||
{
|
||||
os << *itr << " ";
|
||||
}
|
||||
|
||||
os << ')';
|
||||
return os;
|
||||
os << ')';
|
||||
return os;
|
||||
}
|
||||
|
||||
|
||||
TableReferencesConstraintDef::~TableReferencesConstraintDef()
|
||||
{
|
||||
delete fTableName;
|
||||
delete fRefAction;
|
||||
}
|
||||
|
||||
delete fTableName;
|
||||
delete fRefAction;
|
||||
}
|
||||
|
||||
} // namespace ddlpackage
|
||||
|
Reference in New Issue
Block a user