gda-value

gda-value — Data values

Functions

GType gda_value_get_gtype ()
GdaValue * gda_value_new_null ()
GdaValue * gda_value_new_bigint ()
GdaValue * gda_value_new_biguint ()
GdaValue * gda_value_new_binary ()
GdaValue * gda_value_new_blob ()
GdaValue * gda_value_new_boolean ()
GdaValue * gda_value_new_date ()
GdaValue * gda_value_new_double ()
GdaValue * gda_value_new_geometric_point ()
GdaValue * gda_value_new_gobject ()
GdaValue * gda_value_new_integer ()
GdaValue * gda_value_new_list ()
GdaValue * gda_value_new_money ()
GdaValue * gda_value_new_numeric ()
GdaValue * gda_value_new_single ()
GdaValue * gda_value_new_smallint ()
GdaValue * gda_value_new_smalluint ()
GdaValue * gda_value_new_string ()
GdaValue * gda_value_new_time ()
GdaValue * gda_value_new_timestamp ()
GdaValue * gda_value_new_timestamp_from_timet ()
GdaValue * gda_value_new_tinyint ()
GdaValue * gda_value_new_tinyuint ()
GdaValue * gda_value_new_type ()
GdaValue * gda_value_new_uinteger ()
GdaValue * gda_value_new_from_string ()
GdaValue * gda_value_new_from_xml ()
void gda_value_free ()
GdaValueType gda_value_get_type ()
#define gda_value_isa()
gboolean gda_value_is_null ()
gboolean gda_value_is_number ()
GdaValue * gda_value_copy ()
gint64 gda_value_get_bigint ()
void gda_value_set_bigint ()
guint64 gda_value_get_biguint ()
void gda_value_set_biguint ()
const gpointer gda_value_get_binary ()
void gda_value_set_binary ()
const GdaBlob * gda_value_get_blob ()
void gda_value_set_blob ()
gboolean gda_value_get_boolean ()
void gda_value_set_boolean ()
const GdaDate * gda_value_get_date ()
void gda_value_set_date ()
gdouble gda_value_get_double ()
void gda_value_set_double ()
const GdaGeometricPoint * gda_value_get_geometric_point ()
void gda_value_set_geometric_point ()
const GObject * gda_value_get_gobject ()
void gda_value_set_gobject ()
gint gda_value_get_integer ()
void gda_value_set_integer ()
const GdaValueList * gda_value_get_list ()
void gda_value_set_list ()
void gda_value_set_null ()
const GdaMoney * gda_value_get_money ()
void gda_value_set_money ()
const GdaNumeric * gda_value_get_numeric ()
void gda_value_set_numeric ()
gfloat gda_value_get_single ()
void gda_value_set_single ()
gshort gda_value_get_smallint ()
void gda_value_set_smallint ()
gushort gda_value_get_smalluint ()
void gda_value_set_smalluint ()
const gchar * gda_value_get_string ()
void gda_value_set_string ()
const GdaTime * gda_value_get_time ()
void gda_value_set_time ()
const GdaTimestamp * gda_value_get_timestamp ()
void gda_value_set_timestamp ()
gchar gda_value_get_tinyint ()
void gda_value_set_tinyint ()
guchar gda_value_get_tinyuint ()
void gda_value_set_tinyuint ()
guint gda_value_get_uinteger ()
void gda_value_set_uinteger ()
GdaValueType gda_value_get_vtype ()
void gda_value_set_vtype ()
gboolean gda_value_set_from_string ()
gboolean gda_value_set_from_value ()
gint gda_value_compare ()
gchar * gda_value_stringify ()
xmlNodePtr gda_value_to_xml ()

Types and Values

Description

Functions

gda_value_get_gtype ()

GType
gda_value_get_gtype (void);


gda_value_new_null ()

GdaValue *
gda_value_new_null (void);

Makes a new GdaValue of type GDA_VALUE_TYPE_NULL.

Returns

the newly created GdaValue.


gda_value_new_bigint ()

GdaValue *
gda_value_new_bigint (gint64 val);

Makes a new GdaValue of type GDA_VALUE_TYPE_BIGINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_biguint ()

GdaValue *
gda_value_new_biguint (guint64 val);

Makes a new GdaValue of type GDA_VALUE_TYPE_BIGUINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_binary ()

GdaValue *
gda_value_new_binary (gconstpointer val,
                      glong size);

Makes a new GdaValue of type GDA_VALUE_TYPE_BINARY with value val .

Parameters

val

value to set for the new GdaValue.

 

size

the size of the memory pool pointer to by val .

 

Returns

the newly created GdaValue.


gda_value_new_blob ()

GdaValue *
gda_value_new_blob (const GdaBlob *val);


gda_value_new_boolean ()

GdaValue *
gda_value_new_boolean (gboolean val);

Makes a new GdaValue of type GDA_VALUE_TYPE_BOOLEAN with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_date ()

GdaValue *
gda_value_new_date (const GdaDate *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_DATE with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_double ()

GdaValue *
gda_value_new_double (gdouble val);

Makes a new GdaValue of type GDA_VALUE_TYPE_DOUBLE with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_geometric_point ()

GdaValue *
gda_value_new_geometric_point (const GdaGeometricPoint *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_GEOMETRIC_POINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_gobject ()

GdaValue *
gda_value_new_gobject (const GObject *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_GOBJECT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_integer ()

GdaValue *
gda_value_new_integer (gint val);

Makes a new GdaValue of type GDA_VALUE_TYPE_INTEGER with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_list ()

GdaValue *
gda_value_new_list (const GdaValueList *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_LIST with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_money ()

GdaValue *
gda_value_new_money (const GdaMoney *val);


gda_value_new_numeric ()

GdaValue *
gda_value_new_numeric (const GdaNumeric *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_NUMERIC with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_single ()

GdaValue *
gda_value_new_single (gfloat val);

Makes a new GdaValue of type GDA_VALUE_TYPE_SINGLE with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_smallint ()

GdaValue *
gda_value_new_smallint (gshort val);

Makes a new GdaValue of type GDA_VALUE_TYPE_SMALLINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_smalluint ()

GdaValue *
gda_value_new_smalluint (gushort val);

Makes a new GdaValue of type GDA_VALUE_TYPE_SMALLUINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_string ()

GdaValue *
gda_value_new_string (const gchar *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_STRING with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_time ()

GdaValue *
gda_value_new_time (const GdaTime *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_TIME with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_timestamp ()

GdaValue *
gda_value_new_timestamp (const GdaTimestamp *val);

Makes a new GdaValue of type GDA_VALUE_TYPE_TIMESTAMP with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_timestamp_from_timet ()

GdaValue *
gda_value_new_timestamp_from_timet (time_t val);

Makes a new GdaValue of type GDA_VALUE_TYPE_TIMESTAMP with value val (of type time_t).

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_tinyint ()

GdaValue *
gda_value_new_tinyint (gchar val);

Makes a new GdaValue of type GDA_VALUE_TYPE_TINYINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_tinyuint ()

GdaValue *
gda_value_new_tinyuint (guchar val);

Makes a new GdaValue of type GDA_VALUE_TYPE_TINYUINT with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_type ()

GdaValue *
gda_value_new_type (GdaValueType val);

Makes a new GdaValue of type GDA_VALUE_TYPE_TYPE with value val .

Parameters

val

Value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_uinteger ()

GdaValue *
gda_value_new_uinteger (guint val);

Makes a new GdaValue of type GDA_VALUE_TYPE_UINTEGER with value val .

Parameters

val

value to set for the new GdaValue.

 

Returns

the newly created GdaValue.


gda_value_new_from_string ()

GdaValue *
gda_value_new_from_string (const gchar *as_string,
                           GdaValueType type);

Makes a new GdaValue of type type from its string representation.

Parameters

as_string

stringified representation of the value.

 

type

the new value type.

 

Returns

the newly created GdaValue or NULL if the string representation cannot be converted to the specified type .


gda_value_new_from_xml ()

GdaValue *
gda_value_new_from_xml (const xmlNodePtr node);

Creates a GdaValue from a XML representation of it. That XML node corresponds to the following string representation: <value type="gdatype">value</value>

Parameters

node

a XML node representing the value.

 

Returns

the newly created GdaValue.


gda_value_free ()

void
gda_value_free (GdaValue *value);

Deallocates all memory associated to a GdaValue.

Parameters

value

the resource to free.

 

gda_value_get_type ()

GdaValueType
gda_value_get_type (GdaValue *value);

Retrieves the type of the given value.

Parameters

value

value to get the type from.

 

Returns

the GdaValueType of the value.


gda_value_isa()

#define       gda_value_isa(value,type) (gda_value_get_type (value) == type)


gda_value_is_null ()

gboolean
gda_value_is_null (GdaValue *value);

Tests if a given value is of type GDA_VALUE_TYPE_NULL.

Parameters

value

value to test.

 

Returns

a boolean that says whether or not value is of type GDA_VALUE_TYPE_NULL.


gda_value_is_number ()

gboolean
gda_value_is_number (GdaValue *value);

Gets whether the value stored in the given GdaValue is of numeric type or not.

Parameters

value

a GdaValue.

 

Returns

TRUE if a number, FALSE otherwise.


gda_value_copy ()

GdaValue *
gda_value_copy (GdaValue *value);

Creates a new GdaValue from an existing one.

Parameters

value

value to get a copy from.

 

Returns

a newly allocated GdaValue with a copy of the data in value .


gda_value_get_bigint ()

gint64
gda_value_get_bigint (GdaValue *value);

Gets the value stored in value .

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value contained in value .


gda_value_set_bigint ()

void
gda_value_set_bigint (GdaValue *value,
                      gint64 val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_biguint ()

guint64
gda_value_get_biguint (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_biguint ()

void
gda_value_set_biguint (GdaValue *value,
                       guint64 val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_binary ()

const gpointer
gda_value_get_binary (GdaValue *value,
                      glong *size);

Parameters

value

a GdaValue whose value we want to get.

 

size

holder for length of data.

 

Returns

the value stored in value .


gda_value_set_binary ()

void
gda_value_set_binary (GdaValue *value,
                      gconstpointer val,
                      glong size);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

size

the size of the memory pool pointed to by val .

 

gda_value_get_blob ()

const GdaBlob *
gda_value_get_blob (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_blob ()

void
gda_value_set_blob (GdaValue *value,
                    const GdaBlob *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_boolean ()

gboolean
gda_value_get_boolean (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_boolean ()

void
gda_value_set_boolean (GdaValue *value,
                       gboolean val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_date ()

const GdaDate *
gda_value_get_date (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_date ()

void
gda_value_set_date (GdaValue *value,
                    const GdaDate *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_double ()

gdouble
gda_value_get_double (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_double ()

void
gda_value_set_double (GdaValue *value,
                      gdouble val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_geometric_point ()

const GdaGeometricPoint *
gda_value_get_geometric_point (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_geometric_point ()

void
gda_value_set_geometric_point (GdaValue *value,
                               const GdaGeometricPoint *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_gobject ()

const GObject *
gda_value_get_gobject (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_gobject ()

void
gda_value_set_gobject (GdaValue *value,
                       const GObject *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_integer ()

gint
gda_value_get_integer (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_integer ()

void
gda_value_set_integer (GdaValue *value,
                       gint val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_list ()

const GdaValueList *
gda_value_get_list (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_list ()

void
gda_value_set_list (GdaValue *value,
                    const GdaValueList *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_set_null ()

void
gda_value_set_null (GdaValue *value);

Sets the type of value to GDA_VALUE_TYPE_NULL.

Parameters

value

a GdaValue that will store a value of type GDA_VALUE_TYPE_NULL.

 

gda_value_get_money ()

const GdaMoney *
gda_value_get_money (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_money ()

void
gda_value_set_money (GdaValue *value,
                     const GdaMoney *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_numeric ()

const GdaNumeric *
gda_value_get_numeric (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_numeric ()

void
gda_value_set_numeric (GdaValue *value,
                       const GdaNumeric *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_single ()

gfloat
gda_value_get_single (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_single ()

void
gda_value_set_single (GdaValue *value,
                      gfloat val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_smallint ()

gshort
gda_value_get_smallint (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_smallint ()

void
gda_value_set_smallint (GdaValue *value,
                        gshort val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_smalluint ()

gushort
gda_value_get_smalluint (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_smalluint ()

void
gda_value_set_smalluint (GdaValue *value,
                         gushort val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_string ()

const gchar *
gda_value_get_string (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_string ()

void
gda_value_set_string (GdaValue *value,
                      const gchar *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_time ()

const GdaTime *
gda_value_get_time (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_time ()

void
gda_value_set_time (GdaValue *value,
                    const GdaTime *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_timestamp ()

const GdaTimestamp *
gda_value_get_timestamp (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_timestamp ()

void
gda_value_set_timestamp (GdaValue *value,
                         const GdaTimestamp *val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_tinyint ()

gchar
gda_value_get_tinyint (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_tinyint ()

void
gda_value_set_tinyint (GdaValue *value,
                       gchar val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_tinyuint ()

guchar
gda_value_get_tinyuint (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_tinyuint ()

void
gda_value_set_tinyuint (GdaValue *value,
                        guchar val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_uinteger ()

guint
gda_value_get_uinteger (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_uinteger ()

void
gda_value_set_uinteger (GdaValue *value,
                        guint val);

Stores val into value .

Parameters

value

a GdaValue that will store val .

 

val

value to be stored in value .

 

gda_value_get_vtype ()

GdaValueType
gda_value_get_vtype (GdaValue *value);

Parameters

value

a GdaValue whose value we want to get.

 

Returns

the value stored in value .


gda_value_set_vtype ()

void
gda_value_set_vtype (GdaValue *value,
                     GdaValueType type);

Stores type into value .

Parameters

value

a GdaValue that will store type .

 

type

value to be stored in value .

 

gda_value_set_from_string ()

gboolean
gda_value_set_from_string (GdaValue *value,
                           const gchar *as_string,
                           GdaValueType type);

Stores the value data from its string representation as type .

Parameters

value

a GdaValue that will store val .

 

as_string

the stringified representation of the value.

 

type

the type of the value

 

Returns

TRUE if the value has been properly converted to type from its string representation. FALSE otherwise.


gda_value_set_from_value ()

gboolean
gda_value_set_from_value (GdaValue *value,
                          const GdaValue *from);

Sets the value of a GdaValue from another GdaValue. This is different from gda_value_copy, which creates a new GdaValue. gda_value_set_from_value, on the other hand, copies the contents of copy into value , which must already be allocated.

Parameters

value

a GdaValue.

 

from

the value to copy from.

 

Returns

TRUE if successful, FALSE otherwise.


gda_value_compare ()

gint
gda_value_compare (GdaValue *value1,
                   GdaValue *value2);

Compares two values of the same type.

Parameters

value1

a GdaValue to compare.

 

value2

the other GdaValue to be compared to value1 .

 

Returns

if both values have the same type, returns 0 if both contain the same value, an integer less than 0 if value1 is less than value2 or an integer greater than 0 if value1 is greater than value2 .


gda_value_stringify ()

gchar *
gda_value_stringify (GdaValue *value);

Converts a GdaValue to its string representation as indicated by this table:

Parameters

value

a GdaValue.

 

Returns

a string formatted according to the printf() style indicated in the preceding table. Free the value with a g_free() when you've finished using it.


gda_value_to_xml ()

xmlNodePtr
gda_value_to_xml (GdaValue *value);

Serializes the given GdaValue to a XML node string.

Parameters

value

a GdaValue.

 

Returns

the XML node. Once not needed anymore, you should free it.

Types and Values

TIMEZONE_INVALID

#define TIMEZONE_INVALID (2*12*60*60)


enum GdaValueType

Members

GDA_VALUE_TYPE_NULL

   

GDA_VALUE_TYPE_BIGINT

   

GDA_VALUE_TYPE_BIGUINT

   

GDA_VALUE_TYPE_BINARY

   

GDA_VALUE_TYPE_BLOB

   

GDA_VALUE_TYPE_BOOLEAN

   

GDA_VALUE_TYPE_DATE

   

GDA_VALUE_TYPE_DOUBLE

   

GDA_VALUE_TYPE_GEOMETRIC_POINT

   

GDA_VALUE_TYPE_GOBJECT

   

GDA_VALUE_TYPE_INTEGER

   

GDA_VALUE_TYPE_LIST

   

GDA_VALUE_TYPE_MONEY

   

GDA_VALUE_TYPE_NUMERIC

   

GDA_VALUE_TYPE_SINGLE

   

GDA_VALUE_TYPE_SMALLINT

   

GDA_VALUE_TYPE_SMALLUINT

   

GDA_VALUE_TYPE_STRING

   

GDA_VALUE_TYPE_TIME

   

GDA_VALUE_TYPE_TIMESTAMP

   

GDA_VALUE_TYPE_TINYINT

   

GDA_VALUE_TYPE_TINYUINT

   

GDA_VALUE_TYPE_TYPE

   

GDA_VALUE_TYPE_UINTEGER

   

GDA_VALUE_TYPE_UNKNOWN

   

GdaDate

typedef struct {
	gshort year;
	gushort month;
	gushort day;
} GdaDate;


GdaGeometricPoint

typedef struct {
	gdouble x;
	gdouble y;
} GdaGeometricPoint;


GdaMoney

typedef struct {
	gchar *currency;
	gdouble amount;
} GdaMoney;


GdaNumeric

typedef struct {
	gchar *number;
	glong precision;
	glong width;
} GdaNumeric;


GdaTime

typedef struct {
	gushort hour;
	gushort minute;
	gushort second;
	glong timezone; /* # of seconds to the east UTC */
} GdaTime;


GdaTimestamp

typedef struct {
	gshort year;
	gushort month;
	gushort day;
	gushort hour;
	gushort minute;
	gushort second;
	gulong fraction;
	glong timezone; /* # of seconds to the east UTC */
} GdaTimestamp;


GdaValueList

typedef GList GdaValueList;


GdaValue

typedef struct {
	GdaValueType type;
	union {
		gint64 v_bigint;
 	        guint64 v_biguint;
		gpointer v_binary;
		GdaBlob v_blob;
		gboolean v_boolean;
		GdaDate v_date;
		gdouble v_double;
		GdaGeometricPoint v_point;
		GObject *v_gobj;
		gint v_integer;
		GdaValueList *v_list;
		GdaMoney v_money;
		GdaNumeric v_numeric;
		gfloat v_single;
		gshort v_smallint;
 	        gushort v_smalluint;
		gchar *v_string;
		GdaTime v_time;
		GdaTimestamp v_timestamp;
		gchar v_tinyint;
 	        guchar v_tinyuint;
		GdaValueType v_type;
		guint v_uinteger;
	} value;
	glong binary_length;
} GdaValue;


GDA_TYPE_VALUE

#define GDA_TYPE_VALUE (gda_value_get_gtype())