mirror of
git://sourceware.org/git/libabigail.git
synced 2025-03-06 06:37:31 +00:00
The Git repository of the Libabigail Project
During the traversal of the graph of diff nodes, diff::traverse does two things: 1/ If the generic view of the diff node of is not yet connected to the diff graph, then connect it. Note that the typed view of the diff node is always connected to the diff graph. 2/ Visit the diff node using its generic view and visit its children nodes. Looking at the part 1/, I realized that the code connecting the generic view of the diff node to the diff graph was duplicated in every single type of diff node. This patch put that code into diff::finish_diff_type and makes all the different kinds diff node use that (virtual) member function, effectively factorizing that code. * include/abg-comparison.h ({distinct, var, pointer, reference, array, qualified_type, enum, class_or_union, class, union, base, scope, fn_parm, function_type, function_decl, type_decl, typedef}_diff::finish_diff_type): Remove these declarations. * src/abg-comparison.cc ({distinct, var, pointer, reference, array, qualified_type, enum, class_or_union, class, union, base, scope, fn_parm, function_type, function_decl, type_decl, typedef}_diff::finish_diff_type): Remove these definitions. (diff::finish_diff_type): Add the code to connect the children nodes to the current node, making the generic view of the diff node usable to walk the graph. Signed-off-by: Dodji Seketeli <dodji@redhat.com> |
||
---|---|---|
autoconf-archive | ||
bash-completion | ||
doc | ||
include | ||
m4 | ||
relicensing-scripts | ||
scripts | ||
src | ||
tests | ||
tools | ||
.clang-format | ||
.gitignore | ||
.mailmap | ||
abigail.m4 | ||
ABIXML-FORMAT-VERSIONS | ||
AUTHORS | ||
ChangeLog | ||
COMMIT-LOG-GUIDELINES | ||
COMPILING | ||
configure.ac | ||
CONTRIBUTING | ||
default.abignore | ||
gen-changelog.py | ||
install-sh | ||
libabigail.pc.in | ||
license-change-2020.txt | ||
LICENSE.txt | ||
ltmain.sh | ||
Makefile.am | ||
NEWS | ||
README | ||
release-text-template.txt | ||
update-copyright.sh | ||
VISIBILITY |
This is the Application Binary Interface Generic Analysis and Instrumentation Library. It aims at constructing, manipulating, serializing and de-serializing ABI-relevant artifacts. The set of artifacts that we are intersted is made of quantities like types, variable, functions and declarations of a given library or program. For a given library or program this set of quantities is called an ABI corpus. This library aims at (among other things) providing a way to compare two ABI Corpora (apparently the plural of corpus is copora, heh, that's cool), provide detailed information about their differences, and help build tools to infer interesting conclusions about these differences. You are welcome to contribute to this project after reading the files CONTRIBUTING and COMMIT-LOG-GUIDELINES files in the source tree. Communicating with the maintainers of this project -- including sending patches to be include to the source code -- happens via email at libabigail@sourceware.org.