You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gnucash/libgnucash/engine
Bruce Schuck 0ca5d1d956
Fixed comment about failover methods/multiple sources
1 year ago
..
mocks Wrap include of gtest.h and gmock.h with a warning-silencing pragma. 1 year ago
test Merge Bill Sommerfeld's 'gnc-date-fix' into stable. 1 year ago
test-core Add missing `#include <cstdint>` 2 years ago
Account.cpp Bug 799565 - Reconcile date default doesn't update to reflect previous reconciliation. 1 year ago
Account.h Bug 799528 - Crash on account deletion (edit) 1 year ago
Account.hpp [Account.hpp] gnc_account_get_all_parents returns reversed path vector 1 year ago
AccountP.hpp [Account.cpp] refactor acc->balance_limit getters/setters 2 years ago
CMakeLists.txt Bug 799480 - Fails to build with ICU 76 2 years ago
FreqSpec.h
Query.cpp Reapply filter when number of sub-accounts change 2 years ago
Query.h Reapply filter when number of sub-accounts change 2 years ago
README Remove texi design document in engine 2 years ago
README.query-api
Recurrence.cpp Mortgage assistant: Avoid crash when returning to the repayment page. 1 year ago
Recurrence.h recurrencePeriodTypeToString and recurrenceWeekendAdjustToString g_strdup only when necessary 3 years ago
SX-book-p.h Use internal extern "C" { ... } for C++ 3 years ago
SX-book.cpp [SX-book.cpp] convert to c++ 2 years ago
SX-book.h Use internal extern "C" { ... } for C++ 3 years ago
SX-ttinfo.hpp [SX-ttinfo.cpp] tidier, using c++ stl and algo 2 years ago
SchedXaction.cpp [SX-ttinfo.cpp] tidier, using c++ stl and algo 2 years ago
SchedXaction.h [SX-ttinfo.cpp] tidier, using c++ stl and algo 2 years ago
SchedXaction.hpp [SX-ttinfo.cpp] tidier, using c++ stl and algo 2 years ago
Scrub.cpp [Scrub.cpp] don't create intermediate GHashTable and GList 2 years ago
Scrub.h Use internal extern "C" { ... } for C++ 3 years ago
Scrub2.cpp [Transaction.hpp] rename to .hpp 2 years ago
Scrub2.h [Scrub2.cpp] convert to cpp 2 years ago
Scrub3.cpp [Transaction.hpp] rename to .hpp 2 years ago
Scrub3.h Use internal extern "C" { ... } for C++ 3 years ago
ScrubBudget.c [budget-feature] move unset_feature call to gnc_budget_gui_delete_budget 4 years ago
ScrubBudget.h [1/2][Scrubbudget.c] use heuristics to scrub budget signs 5 years ago
ScrubBusiness.c g_list_free xaccAccountGetSplitList 2 years ago
ScrubBusiness.h add #ifdef __cplusplus extern "C" {} wrappers to .h files 2 years ago
Split.cpp use gnc_account_get_all_parents and std::mismatch 1 year ago
Split.h [Transaction|Split.cpp] Remove Reg2 unused functions 2 years ago
SplitP.hpp [SplitP.hpp] rename to .hpp 2 years ago
TransLog.cpp [Transaction.hpp] rename to .hpp 2 years ago
TransLog.h Use internal extern "C" { ... } for C++ 3 years ago
Transaction.cpp [transaction.cpp] use std::swap instead of SWAP macro 2 years ago
Transaction.h [Transaction|Split.cpp] Remove Reg2 unused functions 2 years ago
TransactionP.hpp [SplitP.hpp] rename to .hpp 2 years ago
cap-gains.cpp [Transaction.hpp] rename to .hpp 2 years ago
cap-gains.h Add #ifdef __cplusplus extern "C" {} wrappers to .h files 2 years ago
cashobjects.cpp [Transaction.hpp] rename to .hpp 2 years ago
cashobjects.h Use internal extern "C" { ... } for C++ 3 years ago
engine-helpers.c [engine-helpers.h] key is a const char* 2 years ago
engine-helpers.h [engine-helpers.h] key is a const char* 2 years ago
gnc-accounting-period.c [options] Move options from app-utils to engine. 4 years ago
gnc-accounting-period.h Use internal extern "C" { ... } for C++ 3 years ago
gnc-aqbanking-templates.cpp Use internal extern "C" { ... } for C++ 3 years ago
gnc-aqbanking-templates.h Don't use extern "C" around #includes 3 years ago
gnc-backend-prov.hpp
gnc-budget.cpp use c++ placement new 2 years ago
gnc-budget.h Don't use extern "C" around #includes 3 years ago
gnc-commodity.cpp Fixed comment about failover methods/multiple sources 1 year ago
gnc-commodity.h [gnc-commodity.h] callers must free g_list 2 years ago
gnc-commodity.hpp [gnc-commodity.cpp] gnc_quote_source_set_fq_installed takes a StrVec 2 years ago
gnc-date-p.h Don't use extern "C" around #includes 3 years ago
gnc-date.cpp Bug 799506 - reconcile bad date pops to 1969 1 year ago
gnc-date.h [gnc-date.cpp] deprecate gnc_difftime 2 years ago
gnc-datetime.cpp [gnc-datetime] improve CSV date parser with ICU and boost 2 years ago
gnc-datetime.hpp [gnc-datetime] improve CSV date parser with ICU and boost 2 years ago
gnc-engine.cpp [Transaction.hpp] rename to .hpp 2 years ago
gnc-engine.h [Transaction.hpp] rename to .hpp 2 years ago
gnc-euro.cpp [gnc-euro.cpp] use c++isms 2 years ago
gnc-euro.h Use internal extern "C" { ... } for C++ 3 years ago
gnc-event.c
gnc-event.h
gnc-features.cpp [gnc-features.cpp] remove_if requires <algorithm> 3 years ago
gnc-features.h Refactor gnc-features. 3 years ago
gnc-hooks.c
gnc-hooks.h Use internal extern "C" { ... } for C++ 3 years ago
gnc-int128.cpp [-Wunused-value] - remove 3 years ago
gnc-int128.hpp Silence Clang deprecation warnings about sprintf. 3 years ago
gnc-lot-p.h Add #ifdef __cplusplus extern "C" {} wrappers to .h files 2 years ago
gnc-lot.cpp [Transaction.hpp] rename to .hpp 2 years ago
gnc-lot.h Doxygen - minor cleanup of gnc-lot.h 2 years ago
gnc-numeric.cpp Improve GncNumeric(std::string) to handle unicode spaces. 1 year ago
gnc-numeric.h Doxygen - drop several txt files that were included in 2 years ago
gnc-numeric.hpp Add missing `#include <cstdint>` 2 years ago
gnc-option-date.cpp gnc_relative_date_to_time64: Have only if statemen for period TODAY. 1 year ago
gnc-option-date.hpp Test gnc-option-date variable fy start days. 1 year ago
gnc-option-impl.cpp Merge branch 'free-guid-string' into stable #1777 3 years ago
gnc-option-impl.hpp Add missing `#include <cstdint>` 2 years ago
gnc-option-ui.hpp [options] Move options from app-utils to engine. 4 years ago
gnc-option-uitype.hpp Bug753307 - Custom Report be selectable as default Report for Printing 3 years ago
gnc-option.cpp [c++options] Correctly implement handling Fancy Date Format. 3 years ago
gnc-option.hpp Add missing `#include <cstdint>` 2 years ago
gnc-optiondb-impl.hpp [c++options]Really fix the gnc_option_db_lookup_string_value leak 3 years ago
gnc-optiondb.cpp gnc_commodity_table_get_namespaces must be g_list_freed 2 years ago
gnc-optiondb.h [c++options]Really fix the gnc_option_db_lookup_string_value leak 3 years ago
gnc-optiondb.hpp Add missing `#include <cstdint>` 2 years ago
gnc-pricedb-p.h [gnc-pricedb.h] remove unused gnc_pricedb_substitute_commodity 2 years ago
gnc-pricedb.cpp [gnc-pricedb.h] remove unused gnc_pricedb_substitute_commodity 2 years ago
gnc-pricedb.h [gnc-pricedb.h] remove unused gnc_pricedb_lookup_at_time64 2 years ago
gnc-rational-rounding.hpp
gnc-rational.cpp Add missing `#include <cstdint>` 2 years ago
gnc-rational.hpp
gnc-session.c
gnc-session.h Use internal extern "C" { ... } for C++ 3 years ago
gnc-timezone.cpp Fix UAF in xaccFreeSplit. 3 years ago
gnc-timezone.hpp Use internal extern "C" { ... } for C++ 3 years ago
gnc-uri-utils.c Doxygen - drop obvious cases of deprecated code 2 years ago
gnc-uri-utils.h Doxygen - drop obvious cases of deprecated code 2 years ago
gncAddress.c [~qofchoice.cpp] remove, not useful 2 years ago
gncAddress.h Doxygen - fold business.txt file in the respective source files 2 years ago
gncAddressP.h [engine/*.h] add extern "C" {} wrappers 2 years ago
gncBillTerm.c Doxygen - fold business.txt file in the respective source files 2 years ago
gncBillTerm.h Doxygen - fold business.txt file in the respective source files 2 years ago
gncBillTermP.h Use internal extern "C" { ... } for C++ 3 years ago
gncBusiness.c
gncBusiness.h Doxygen - merge separate txt files into respective header files 2 years ago
gncCustomer.c [~qofchoice.cpp] remove, not useful 2 years ago
gncCustomer.h Don't use extern "C" around #includes 3 years ago
gncCustomerP.h [engine/*.h] add extern "C" {} wrappers 2 years ago
gncEmployee.c Remove extra semicolons 3 years ago
gncEmployee.h Don't use extern "C" around #includes 3 years ago
gncEmployeeP.h [engine/*.h] add extern "C" {} wrappers 2 years ago
gncEntry.c Merge branch 'maint' 3 years ago
gncEntry.h Merge Richard Cohen's 'cleanup' into master. 3 years ago
gncEntryP.h Use internal extern "C" { ... } for C++ 3 years ago
gncIDSearch.c Revert b5f5129f7 using gnc_list_length_cmp 5 years ago
gncIDSearch.h
gncInvoice.c Add missing `#include <cstdint>` 2 years ago
gncInvoice.h Don't use extern "C" around #includes 3 years ago
gncInvoiceP.h Use internal extern "C" { ... } for C++ 3 years ago
gncJob.c [~qofchoice.cpp] remove, not useful 2 years ago
gncJob.h Merge branch 'maint' 3 years ago
gncJobP.h [engine/*.h] add extern "C" {} wrappers 2 years ago
gncOrder.c Remove extra semicolons 3 years ago
gncOrder.h Merge Richard Cohen's 'cleanup' into master. 3 years ago
gncOrderP.h [engine/*.h] add extern "C" {} wrappers 2 years ago
gncOwner.c Bug 798925 - Python bindings: "invalid unclassed pointer... 3 years ago
gncOwner.h Bug 798950 - Bug Report: Incorrect Currency Conversion and Provider Invoice Payment Recording 3 years ago
gncOwnerP.h
gncTaxTable.c Doxygen - fold business.txt file in the respective source files 2 years ago
gncTaxTable.h Doxygen - merge separate txt files into respective header files 2 years ago
gncTaxTableP.h Use internal extern "C" { ... } for C++ 3 years ago
gncVendor.c [~qofchoice.cpp] remove, not useful 2 years ago
gncVendor.h Don't use extern "C" around #includes 3 years ago
gncVendorP.h [engine/*.h] add extern "C" {} wrappers 2 years ago
guid.cpp [engine/*.cpp] NULL -> nullptr changes 2 years ago
guid.h Don't use extern "C" around #includes 3 years ago
guid.hpp [guid.hpp] GUID::from_string and is_valid_string takes a const char* 2 years ago
iso-4217-currencies.xml Bug 799580 - Swiss currency symbol is displayed as SFr. instead of CHF 1 year ago
iso-currencies-to-c.xsl
kvp-frame.cpp Add missing `#include <cstdint>` 2 years ago
kvp-frame.hpp [kvp-frame.cpp] expose iterator, skip inexistent frame 4 years ago
kvp-value.cpp [engine] Remove two replace functions from KvpValue 3 years ago
kvp-value.hpp Add missing `#include <cstdint>` 2 years ago
kvp_doc.txt Remove texi design document in engine 2 years ago
policy-p.h Merge branch 'maint' 4 years ago
policy.cpp [Transaction.hpp] rename to .hpp 2 years ago
policy.h
qof-backend.cpp Use internal extern "C" { ... } for C++ 3 years ago
qof-backend.hpp Use internal extern "C" { ... } for C++ 3 years ago
qof-gobject.h Remove extra semicolons 3 years ago
qof-string-cache.cpp Use internal extern "C" { ... } for C++ 3 years ago
qof-string-cache.h
qof-win32.cpp Don't use extern "C" around #includes 3 years ago
qof.h [~qofchoice.cpp] remove, not useful 2 years ago
qofbackend.h
qofbook-p.h Doxygen - drop obvious cases of deprecated code 2 years ago
qofbook.cpp [AccountP.hpp] .h -> .hpp, remove extern "C" {} wrapper 2 years ago
qofbook.h Don't use extern "C" around #includes 3 years ago
qofbook.hpp Refactor gnc-features. 3 years ago
qofbookslots.h Allow to select saved report on print invoice button 3 years ago
qofclass-p.h
qofclass.cpp
qofclass.h [~qofchoice.cpp] remove, not useful 2 years ago
qofevent-p.h
qofevent.cpp
qofevent.h
qofid-p.h
qofid.cpp [qofid.cpp] remove unnecessary struct 2 years ago
qofid.h [qofid.cpp] qof_collection_foreach_sorted 2 years ago
qofinstance-p.h [qofinstance.cpp] add overloaded qof_instance_set|get_path_kvp 2 years ago
qofinstance.cpp Bug 799562 - Import Map Editor Non-Bayesian crashes gnucash 1 year ago
qofinstance.h Use internal extern "C" { ... } for C++ 3 years ago
qoflog.cpp [engine/*.cpp] NULL -> nullptr changes 2 years ago
qoflog.h Don't use extern "C" around #includes 3 years ago
qofobject-p.h
qofobject.cpp [engine/*.cpp] NULL -> nullptr changes 2 years ago
qofobject.h [~qofchoice.cpp] remove, not useful 2 years ago
qofquery-p.h
qofquery.cpp Silence compile warning with a cast. 2 years ago
qofquery.h [~qofchoice.cpp] remove, not useful 2 years ago
qofquerycore-p.h
qofquerycore.cpp Reapply filter when number of sub-accounts change 2 years ago
qofquerycore.h Reapply filter when number of sub-accounts change 2 years ago
qofsession.cpp Bug 799490 - Error on start or opening a gnucash file: Can't parse the URL 1 year ago
qofsession.h
qofsession.hpp
qofutil.cpp Bug 798679 - Unicode normalization should be used for comparison but not stored. 3 years ago
qofutil.h scanf supports %lld since C++11, C99 3 years ago

README


This directory contains code for the accounting engine.
Its fairly clean but far from perfect, and it certainly
lacks advanced features.

There should be no GUI code in this subdirectory, and,
ideally, it should build cleanly and independently of
any GUI elements or assumptions.

For design documentation, please read our doxygen documentation.
This can be found at https://code.gnucash.org/docs/STABLE/
Alternatively you can build it yourself by running
[ninja|make] doc
The result will be found in
{builddir}/libgnucash/doc/html/index.html

The same information can mostly be found directly in the header
files in this directory as well (though in marked up source format).