Drizzled Public API Documentation

drizzled::type::Decimal Class Reference

#include <decimal.h>

Inheritance diagram for drizzled::type::Decimal:
drizzled::decimal_t

Public Member Functions

void init ()
void fix_buffer_pointer ()
bool sign () const
void sign (bool s)
uint32_t precision () const
int val_int32 (uint32_t mask, bool unsigned_flag, int64_t *l) const
int string_length () const
int val_binary (uint32_t mask, unsigned char *bin, int prec, int scale) const
int store (uint32_t mask, const char *from, uint32_t length, const charset_info_st *charset)
 Convert string for decimal when string can be in some multibyte charset.
int store (uint32_t mask, char *str, char **end)
int store (uint32_t mask, const String *str)
int check_result_and_overflow (uint32_t mask, int result)
void convert (double &value) const
void set_zero ()
void negate ()
int isZero () const

Public Attributes

int intg
int frac
int len
bool sign
decimal_digit_t * buf

Private Attributes

decimal_digit_t buffer [DECIMAL_BUFF_LENGTH]

Detailed Description

type Decimal class limits 'decimal_t' type to what we need in MySQL.

It contains internally all necessary space needed by the instance so no extra memory is needed. One should call fix_buffer_pointer() function when he moves type::Decimal objects in memory.

Definition at line 183 of file decimal.h.

Member Function Documentation

int drizzled::type::Decimal::store ( uint32_t  mask,
const char *  from,
uint32_t  length,
const charset_info_st charset 
)

Convert string for decimal when string can be in some multibyte charset.

Parameters
maskerror processing mask
fromstring to process
lengthlength of given string
charsetcharset of given string
Returns
Error code
Return values
E_DEC_OK
E_DEC_TRUNCATED
E_DEC_OVERFLOW
E_DEC_BAD_NUM
E_DEC_OOM

Definition at line 285 of file decimal.cc.

Referenced by drizzled::Item_cache_str::val_decimal(), drizzled::Item_str_func::val_decimal(), drizzled::Item_func_numhybrid::val_decimal(), drizzled::Item_copy_string::val_decimal(), drizzled::user_var_entry::val_decimal(), and drizzled::Item_sum_hybrid::val_decimal().


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