On Mon, Feb 21, 2005 at 12:04:34AM +0000, Neil Williams wrote: > On Sunday 20 February 2005 11:35 pm, Chris Shoemaker wrote: > > On Sun, Feb 20, 2005 at 10:57:10PM +0000, Neil Williams wrote: > > > And "the given kvp_frame"? What kvp_frame? The only > > argument is a KvpValue > > You can't have a value outside a frame - the GHashTable at the top of the KVP > tree for this entity. You always pass a returned KvpValue to > kvp_frame_set_value or similar, so there's always an implicit frame.
Not true: KvpValue *vald, *vallist; GList *list, *list2; vald = kvp_value_new_double(1.0); list = g_list_append(NULL, vald); //list is now a GList of KvpValues vallist = kvp_value_new_glist(list); list2 = kvp_value_get_glist(valllist); //No frames to be found. > > > , and if its sub-type _happens_ to be KvpFrame, > > then this function returns NULL. > > Does it? If the value->type is not KVP_TYPE_GLIST, it returns NULL Right, it returns a null pointer. > but the *contents* of the GList are not inspected at this point. huh? What GList? There _is_ no GList if value->type != KVP_TYPE_GLIST. > A list containing > KvpValues of KvpValueType == KVP_TYPE_FRAME is treated no differently to a > GList of KvpValues of any other KvpValueType. Exactly. That's why it doesn't make sense to mention a kvp_frame in the description for: GList * kvp_value_get_glist(const KvpValue * value); > > Look at the description for kvp_value_new_glist > http://code.neil.williamsleesmill.me.uk/gnome2/group__KVP.html#ga63 > > It's a list of values, which can include more frames. or any other kvpvalue subtypes. -chris _______________________________________________ gnucash-devel mailing list [email protected] https://lists.gnucash.org/mailman/listinfo/gnucash-devel
