OmniSciDB  04ee39c94c
ArrayConverterFactory< ELEMENT_FACTORY > Struct Template Reference

Public Member Functions

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

Public Attributes

ELEMENT_FACTORY element_factory_
 

Detailed Description

template<typename ELEMENT_FACTORY>
struct ArrayConverterFactory< ELEMENT_FACTORY >

Definition at line 146 of file TargetValueConvertersFactories.cpp.

Member Function Documentation

◆ create()

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

Definition at line 149 of file TargetValueConvertersFactories.cpp.

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

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

◆ operator()()

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

Definition at line 165 of file TargetValueConvertersFactories.cpp.

References NumericConverterFactory< SOURCE_TYPE, TARGET_TYPE >::create().

165  {
166  return create(param);
167  }
std::unique_ptr< ArrayValueConverter< typename ELEMENT_FACTORY::ConverterType > > create(ConverterCreateParameter param)
+ Here is the call graph for this function:

Member Data Documentation

◆ element_factory_

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

Definition at line 147 of file TargetValueConvertersFactories.cpp.


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