OmniSciDB  c07336695a
Parser::ForeignKeyDef Class Reference

#include <ParserNode.h>

+ Inheritance diagram for Parser::ForeignKeyDef:
+ Collaboration diagram for Parser::ForeignKeyDef:

Public Member Functions

 ForeignKeyDef (std::list< std::string *> *cl, std::string *t, std::list< std::string *> *fcl)
 
const std::list< std::unique_ptr< std::string > > & get_column_list () const
 
const std::string * get_foreign_table () const
 
const std::list< std::unique_ptr< std::string > > & get_foreign_column_list () const
 
- Public Member Functions inherited from Parser::Node
virtual ~Node ()
 

Private Attributes

std::list< std::unique_ptr< std::string > > column_list
 
std::unique_ptr< std::string > foreign_table
 
std::list< std::unique_ptr< std::string > > foreign_column_list
 

Detailed Description

Definition at line 853 of file ParserNode.h.

Constructor & Destructor Documentation

◆ ForeignKeyDef()

Parser::ForeignKeyDef::ForeignKeyDef ( std::list< std::string *> *  cl,
std::string *  t,
std::list< std::string *> *  fcl 
)
inline

Definition at line 855 of file ParserNode.h.

References CHECK.

856  : foreign_table(t) {
857  CHECK(cl);
858  for (const auto s : *cl) {
859  column_list.emplace_back(s);
860  }
861  delete cl;
862  if (fcl) {
863  for (const auto s : *fcl) {
864  foreign_column_list.emplace_back(s);
865  }
866  }
867  delete fcl;
868  }
std::list< std::unique_ptr< std::string > > foreign_column_list
Definition: ParserNode.h:880
std::unique_ptr< std::string > foreign_table
Definition: ParserNode.h:879
#define CHECK(condition)
Definition: Logger.h:187
std::list< std::unique_ptr< std::string > > column_list
Definition: ParserNode.h:878

Member Function Documentation

◆ get_column_list()

const std::list<std::unique_ptr<std::string> >& Parser::ForeignKeyDef::get_column_list ( ) const
inline

Definition at line 869 of file ParserNode.h.

869  {
870  return column_list;
871  }
std::list< std::unique_ptr< std::string > > column_list
Definition: ParserNode.h:878

◆ get_foreign_column_list()

const std::list<std::unique_ptr<std::string> >& Parser::ForeignKeyDef::get_foreign_column_list ( ) const
inline

Definition at line 873 of file ParserNode.h.

873  {
874  return foreign_column_list;
875  }
std::list< std::unique_ptr< std::string > > foreign_column_list
Definition: ParserNode.h:880

◆ get_foreign_table()

const std::string* Parser::ForeignKeyDef::get_foreign_table ( ) const
inline

Definition at line 872 of file ParserNode.h.

872 { return foreign_table.get(); }
std::unique_ptr< std::string > foreign_table
Definition: ParserNode.h:879

Member Data Documentation

◆ column_list

std::list<std::unique_ptr<std::string> > Parser::ForeignKeyDef::column_list
private

Definition at line 878 of file ParserNode.h.

◆ foreign_column_list

std::list<std::unique_ptr<std::string> > Parser::ForeignKeyDef::foreign_column_list
private

Definition at line 880 of file ParserNode.h.

◆ foreign_table

std::unique_ptr<std::string> Parser::ForeignKeyDef::foreign_table
private

Definition at line 879 of file ParserNode.h.


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