gnucash master: Implement KvpFrame in C++ using std::vector

John Ralls jralls at code.gnucash.org
Mon Nov 3 15:28:49 EST 2014


Updated	 via  https://github.com/Gnucash/gnucash/commit/076f1fb2 (commit)
	from  https://github.com/Gnucash/gnucash/commit/6c2a42bf (commit)



commit 076f1fb25df02602a9d1ed5ecdebc4a1f3d18940
Author: lmat <dartme18 at gmail.com>
Date:   Fri Oct 3 22:05:37 2014 -0400

    Implement KvpFrame in C++ using std::vector
    
    KvpFrame was implemented using GList. Given the current desire
    to distance ourselves from glib and acquaint the project with
    C++, the standard library thereof, and boost libraries, KvpFrame
    has been replaced by an implementation that uses a std::map<
    const char *, KvpValueImpl *>.
    
    There were some cases of the KvpFrame's glist being accessed
    directly. A new API to help callers access the KvpFrame's contents
    systematically by providing a list of keys has been created, and
    call sites of the GList code have been updated.
    
    Another deprecated #define was found and removed (kvp_frame_set_str).



Summary of changes:
 src/backend/xml/sixtp-dom-generators.c |  37 ++--
 src/engine/Split.c                     |   2 +-
 src/engine/Transaction.c               |   8 +-
 src/engine/gnc-lot.c                   |   4 +-
 src/libqof/qof/kvp-value.cpp           |  19 +-
 src/libqof/qof/kvp-value.hpp           |  11 +-
 src/libqof/qof/kvp_frame-p.hpp         |  14 --
 src/libqof/qof/kvp_frame.cpp           | 358 +++++++++++++++------------------
 src/libqof/qof/kvp_frame.h             |  20 +-
 src/libqof/qof/kvp_frame.hpp           |  80 ++++++++
 src/libqof/qof/test/test-kvp_frame.c   |  71 ++++---
 11 files changed, 336 insertions(+), 288 deletions(-)
 delete mode 100644 src/libqof/qof/kvp_frame-p.hpp
 create mode 100644 src/libqof/qof/kvp_frame.hpp



More information about the gnucash-patches mailing list