Recursive QofBooks
Christian Stimming
christian at cstimming.de
Fri Aug 12 04:38:58 EDT 2011
Am Donnerstag, 11. August 2011 schrieb John Ralls:
> On Aug 11, 2011, at 12:28 PM, John Ralls wrote:
> > Muslim discovered a couple of functions in QofSession.c,
> > qof_instance_copy_coll_r and qof_instance_copy_one_r, along with a
> > companion test src/engine/test/test-recursive.c which seems intended to
> > support a hierarchy of books. Given the way we treat books, this seems
> > to me to be a seriously dumb idea. It seems to have been added in
> > mid-2005 by Neil Williams as part of a conversion to Gnome 2. Does
> > anyone recall the rationale behind it? Is there any reason not to remove
> > it as useless cruft?
>
> Another batch of unused functions from qofsession.c, called only by
> python_bindings/gnucash_core.c: qof_instance_copy_to_session,
> qof_instance_copy_list, qof_instance_copy_coll
>
> These (and the other two mentioned earlier) are implemented in part by the
> following static functions (which aren't used for anything else, as can be
> seen from the list of callers):
>
> qof_book_set_partial qof_session_update_reference_list,
> qof_instance_copy_to_session, qof_instance_copy_list,
> qof_instance_copy_coll
> qof_session_update_reference_list col_ref_cb, qof_instance_foreach_copy
> qof_instance_param_cb qof_instance_list_foreach,
> qof_instance_copy_to_session, qof_instance_copy_coll
> col_ref_cb qof_instance_foreach_copy
> qof_instance_foreach_copy qof_instance_list_foreach,
> qof_instance_coll_copy, qof_instance_copy_to_session
> qof_instance_guid_match qof_instance_list_foreach,
> qof_instance_copy_to_session
> qof_instance_list_foreach qof_instance_copy_list
> qof_instance_coll_foreach qof_instance_copy_coll
> qof_instance_coll_copy qof_instance_copy_coll
> recurse_collection_cb recurse_ent_cb
> recurse_ent_cb qof_instance_copy_coll_r
>
> Unless someone objects convincingly, the whole steaming pile is coming out.
I agree those should be moved out. The reasons are still the same as earlier
this year: As those are not (yet) in use, they are most likely wrong anyway
and need to be re-implemented when actually needed anyway.
Regards,
Christian
More information about the gnucash-devel
mailing list