GPUdb C++ API  Version 7.0.19.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gpudb::Type::Column Class Reference

#include <gpudb/Type.hpp>

Public Types

enum  ColumnType {
  BYTES = ::avro::AVRO_BYTES,
  DOUBLE = ::avro::AVRO_DOUBLE,
  FLOAT = ::avro::AVRO_FLOAT,
  INT = ::avro::AVRO_INT,
  LONG = ::avro::AVRO_LONG,
  STRING = ::avro::AVRO_STRING
}
 

Public Member Functions

 Column (const std::string &name, const ColumnType type, const std::string &property1="", const std::string &property2="", const std::string &property3="")
 
 Column (const std::string &name, const ColumnType type, const std::vector< std::string > &properties)
 
const std::string & getName () const
 
ColumnType getType () const
 
std::string getTypeName () const
 
bool isNullable () const
 
const std::vector< std::string > & getProperties () const
 
bool hasProperty (std::string property) const
 
bool isColumnCompatible (const Column &other, bool check_query_compatibility=false) const
 Check if the given column is compatible with this column (checks name, primitive types and type-related properties, including nullability). More...
 

Friends

bool operator== (const Column &lhs, const Column &rhs)
 
std::ostream & operator<< (std::ostream &os, const Column &column)
 
std::ostream & operator<< (std::ostream &os, Column &column)
 

Detailed Description

Definition at line 20 of file Type.hpp.

Member Enumeration Documentation

Enumerator
BYTES 
DOUBLE 
FLOAT 
INT 
LONG 
STRING 

Definition at line 23 of file Type.hpp.

Constructor & Destructor Documentation

gpudb::Type::Column::Column ( const std::string &  name,
const ColumnType  type,
const std::string &  property1 = "",
const std::string &  property2 = "",
const std::string &  property3 = "" 
)
gpudb::Type::Column::Column ( const std::string &  name,
const ColumnType  type,
const std::vector< std::string > &  properties 
)

Member Function Documentation

const std::string& gpudb::Type::Column::getName ( ) const
const std::vector<std::string>& gpudb::Type::Column::getProperties ( ) const
ColumnType gpudb::Type::Column::getType ( ) const
std::string gpudb::Type::Column::getTypeName ( ) const
bool gpudb::Type::Column::hasProperty ( std::string  property) const
bool gpudb::Type::Column::isColumnCompatible ( const Column other,
bool  check_query_compatibility = false 
) const

Check if the given column is compatible with this column (checks name, primitive types and type-related properties, including nullability).

By default, does not check query compatibility (e.g. 'data', 'disk_optimized', 'store_only', and 'text_search'.), but will if specified.

bool gpudb::Type::Column::isNullable ( ) const

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const Column column 
)
friend
std::ostream& operator<< ( std::ostream &  os,
Column column 
)
friend
bool operator== ( const Column lhs,
const Column rhs 
)
friend

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