OmniSciDB  b24e664e58
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros 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 147 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 150 of file TargetValueConvertersFactories.cpp.

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

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

151  {
152  auto elem_type = param.target->columnType.get_elem_type();
153  ConverterCreateParameter elementConverterFactoryParam{0,
154  param.cat,
155  param.source,
156  param.target,
157  elem_type,
158  true,
159  param.literals_dictionary};
160 
161  auto elementConverter = element_factory_.create(elementConverterFactoryParam);
162  return std::make_unique<ArrayValueConverter<typename ELEMENT_FACTORY::ConverterType>>(
163  param.target, param.num_rows, std::move(elementConverter), param.can_be_null);
164  }
const Catalog_Namespace::Catalog & cat
StringDictionaryProxy * literals_dictionary
SQLTypeInfoCore get_elem_type() const
Definition: sqltypes.h:659
SQLTypeInfo columnType

+ 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 166 of file TargetValueConvertersFactories.cpp.

References ArrayConverterFactory< ELEMENT_FACTORY >::create().

166  {
167  return create(param);
168  }
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: