OmniSciDB  72c90bc290
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ArrayConverterFactory< ELEMENT_FACTORY > Struct Template Reference

Public Member Functions

std::unique_ptr
< ArrayValueConverter
< typename
ELEMENT_FACTORY::ConverterType > > 
create (ConverterCreateParameter param)
 
std::unique_ptr
< TargetValueConverter
operator() (ConverterCreateParameter param)
 

Public Attributes

ELEMENT_FACTORY element_factory_
 

Detailed Description

template<typename ELEMENT_FACTORY>
struct ArrayConverterFactory< ELEMENT_FACTORY >

Definition at line 171 of file TargetValueConvertersFactories.cpp.

Member Function Documentation

template<typename ELEMENT_FACTORY>
std::unique_ptr<ArrayValueConverter<typename ELEMENT_FACTORY::ConverterType> > ArrayConverterFactory< ELEMENT_FACTORY >::create ( ConverterCreateParameter  param)
inline

Definition at line 174 of file TargetValueConvertersFactories.cpp.

References ConverterCreateParameter::can_be_null, ColumnDescriptor::columnType, ArrayConverterFactory< ELEMENT_FACTORY >::element_factory_, SQLTypeInfo::get_elem_type(), ConverterCreateParameter::literals_dictionary, ConverterCreateParameter::num_rows, ConverterCreateParameter::source, ConverterCreateParameter::target, and ConverterCreateParameter::target_cat.

Referenced by ArrayConverterFactory< ELEMENT_FACTORY >::operator()().

175  {
176  auto elem_type = param.target->columnType.get_elem_type();
177  ConverterCreateParameter elementConverterFactoryParam{0,
178  param.source,
179  param.target,
180  param.target_cat,
181  elem_type,
182  true,
183  param.literals_dictionary};
184 
185  auto elementConverter = element_factory_.create(elementConverterFactoryParam);
186  return std::make_unique<ArrayValueConverter<typename ELEMENT_FACTORY::ConverterType>>(
187  param.target, param.num_rows, std::move(elementConverter), param.can_be_null);
188  }
StringDictionaryProxy * literals_dictionary
const Catalog_Namespace::Catalog & target_cat
SQLTypeInfo columnType
SQLTypeInfo get_elem_type() const
Definition: sqltypes.h:975

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename ELEMENT_FACTORY>
std::unique_ptr<TargetValueConverter> ArrayConverterFactory< ELEMENT_FACTORY >::operator() ( ConverterCreateParameter  param)
inline

Definition at line 190 of file TargetValueConvertersFactories.cpp.

References ArrayConverterFactory< ELEMENT_FACTORY >::create().

190  {
191  return create(param);
192  }
std::unique_ptr< ArrayValueConverter< typename ELEMENT_FACTORY::ConverterType > > create(ConverterCreateParameter param)

+ Here is the call graph for this function:

Member Data Documentation

template<typename ELEMENT_FACTORY>
ELEMENT_FACTORY ArrayConverterFactory< ELEMENT_FACTORY >::element_factory_

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