added support for PT::Space as a field in a Model
methods before_field_value_string() and after_field_value_string() moved from DbExpression and JsonExpression to BaseExpression and made virtual and now methods before_field_value(const std::wstring &) and after_field_value(const std::wstring &) (and the rest of them with string arguments) can be removed from DbExpression, PostgreSqlExpression and JsonExpression
This commit is contained in:
@@ -251,6 +251,7 @@ public:
|
||||
virtual void esc(const PT::Date & date, PT::TextStream & stream);
|
||||
virtual void esc(const PT::TextStream & val,PT::TextStream & stream);
|
||||
virtual void esc(const PT::WTextStream & val,PT::TextStream & stream);
|
||||
virtual void esc(const PT::Space & space, PT::TextStream & stream);
|
||||
|
||||
virtual bool is_long_field_name(const wchar_t * field_name);
|
||||
virtual bool is_long_field_name(const PT::TextStream & table_name);
|
||||
@@ -631,6 +632,8 @@ protected:
|
||||
virtual void before_field_value(const PT::Date &);
|
||||
virtual void after_field_value(const PT::Date &);
|
||||
|
||||
virtual void before_field_value(const PT::Space &);
|
||||
virtual void after_field_value(const PT::Space &);
|
||||
|
||||
template<typename FieldValue>
|
||||
void before_field_value(const FieldValue &)
|
||||
@@ -650,43 +653,51 @@ protected:
|
||||
* put_type for: signed char, wchar_t, char16_t, char32_t
|
||||
*
|
||||
*/
|
||||
virtual void put_type(char val, PT::TextStream & stream);
|
||||
virtual void put_type(unsigned char val, PT::TextStream & stream);
|
||||
|
||||
virtual void put_type(const std::wstring & val, PT::TextStream & stream);
|
||||
virtual void put_type(const wchar_t * val, PT::TextStream & stream);
|
||||
|
||||
virtual void put_type(const std::string & val, PT::TextStream & stream);
|
||||
virtual void put_type(const char * val, PT::TextStream & stream);
|
||||
|
||||
virtual void put_type(bool val, PT::TextStream & stream);
|
||||
virtual void put_type(short val, PT::TextStream & stream);
|
||||
virtual void put_type(unsigned short val, PT::TextStream & stream);
|
||||
virtual void put_type(int val, PT::TextStream & stream);
|
||||
virtual void put_type(unsigned int val, PT::TextStream & stream);
|
||||
virtual void put_type(long val, PT::TextStream & stream);
|
||||
virtual void put_type(unsigned long val, PT::TextStream & stream);
|
||||
virtual void put_type(long long val, PT::TextStream & stream);
|
||||
virtual void put_type(unsigned long long val, PT::TextStream & stream);
|
||||
virtual void put_type(float val, PT::TextStream & stream);
|
||||
virtual void put_type(double val, PT::TextStream & stream);
|
||||
virtual void put_type(long double val, PT::TextStream & stream);
|
||||
// virtual void put_type(char val, PT::TextStream & stream);
|
||||
// virtual void put_type(unsigned char val, PT::TextStream & stream);
|
||||
//
|
||||
// virtual void put_type(const std::wstring & val, PT::TextStream & stream);
|
||||
// virtual void put_type(const wchar_t * val, PT::TextStream & stream);
|
||||
//
|
||||
// virtual void put_type(const std::string & val, PT::TextStream & stream);
|
||||
// virtual void put_type(const char * val, PT::TextStream & stream);
|
||||
//
|
||||
// virtual void put_type(bool val, PT::TextStream & stream);
|
||||
// virtual void put_type(short val, PT::TextStream & stream);
|
||||
// virtual void put_type(unsigned short val, PT::TextStream & stream);
|
||||
// virtual void put_type(int val, PT::TextStream & stream);
|
||||
// virtual void put_type(unsigned int val, PT::TextStream & stream);
|
||||
// virtual void put_type(long val, PT::TextStream & stream);
|
||||
// virtual void put_type(unsigned long val, PT::TextStream & stream);
|
||||
// virtual void put_type(long long val, PT::TextStream & stream);
|
||||
// virtual void put_type(unsigned long long val, PT::TextStream & stream);
|
||||
// virtual void put_type(float val, PT::TextStream & stream);
|
||||
// virtual void put_type(double val, PT::TextStream & stream);
|
||||
// virtual void put_type(long double val, PT::TextStream & stream);
|
||||
//virtual void put_type(void* val, PT::TextStream & stream);
|
||||
|
||||
virtual void put_type(const PT::Date & date, PT::TextStream & stream);
|
||||
virtual void put_type(const Model & model, PT::TextStream & stream);
|
||||
// virtual void put_type(const PT::Date & date, PT::TextStream & stream);
|
||||
// virtual void put_type(const Model & model, PT::TextStream & stream);
|
||||
//
|
||||
// template<typename ListType>
|
||||
// void put_type(const std::list<ListType> & model, PT::TextStream & stream)
|
||||
// {
|
||||
// stream << "table"; // may just use std::list?
|
||||
// }
|
||||
//
|
||||
// template<typename ListType>
|
||||
// void put_type(const std::vector<ListType> & model, PT::TextStream & stream)
|
||||
// {
|
||||
// stream << "table"; // may just just std::vector?
|
||||
// }
|
||||
|
||||
|
||||
private:
|
||||
|
||||
virtual void before_field_value_string();
|
||||
virtual void after_field_value_string();
|
||||
|
||||
template<typename ListType>
|
||||
void put_type(const std::list<ListType> & model, PT::TextStream & stream)
|
||||
{
|
||||
stream << "table"; // may just use std::list?
|
||||
}
|
||||
|
||||
template<typename ListType>
|
||||
void put_type(const std::vector<ListType> & model, PT::TextStream & stream)
|
||||
{
|
||||
stream << "table"; // may just just std::vector?
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user