[gnome-db] GdaValue port to GValue - The CVS patch!



Now finaly I get a copy of the CVS, and sustitud the folowing files:

./libgda/gda-value.c
./libgda/gda-value.h
./libgda/gda-utils.c
./providers/ldap/utils.c

And prepare the attached patch.

If you remember, I sed that the port makes a change in the way of
GdaValueType is implemented; then now you CAN'T use the switch/case
with this value becouse is no longer a const integer. (please see the
gda-value.h)

Then I just modify the file utils.c in LDAP provider, becouse don't
recure more changes that in the patch; but other providers use a
swich/case sentence when work with a GdaValueType, and becouse the
pacht will not work any more. The prividers must change the code to
use a if/else if/else sentences to work with a GdaValueType (see the
the function set_from_string(GdaValue *value,  const gchar
*as_string), in the gda-value.c file for an example).

Please tellme any thing about the patch.

Any case, I want to know what do you thing about to make the binary
value stored in a GdaValue as a struct with the data and his size
like:

typedef _GdaBinary GdaBinary;
typedef struct _GdaBinary {
   gpointer data;
   glong size;
};

And register as a boxed derived type.

This is becouse the size is a property of a Binary value.

But a more important thing is that the size is the only thing that
made a GdaValue a struct; if this property is used as a struct the we
can made that:

typedef GValue GdaValue;

and made the first steps to clear the code to use just GValue over the
code, for future work.

-- 
Trabajar, la mejor arma para tu superación



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]