Object Introspection (OI) enables on-demand, hierarchical profiling of objects in arbitrary C/C++ programs with no recompilation.
Go to file
Alastair Robertson 30cd23fa53 TypeGraph: Introduce TypeGraphParser to simplify unit testing
TypeGraphParser parses a textual type graph, as emitted by Printer.

It also doubles as a way of ensuring that Printer displays all
information about a type graph, to aid with debugging.

Convert Flattener unit tests over to this new framework as a first step.
2023-07-13 17:38:49 +01:00
.circleci ci: enable tree-builder-type-checking tests 2023-07-13 16:05:24 +01:00
.github Add website deployment script 2022-12-20 08:40:51 -08:00
cmake Enable compiler warnings globally 2023-05-23 10:36:42 +01:00
examples clang-format: set BinPackParameters=false 2023-04-24 11:28:22 +02:00
extern drgn: elfutils: Implement 64-bits offsets reconstruction for CU/TU Index Table 2023-07-06 17:09:41 +01:00
include add exporters::TypeCheckingWalker 2023-07-13 16:05:24 +01:00
oi TypeGraph: Introduce TypeGraphParser to simplify unit testing 2023-07-13 17:38:49 +01:00
resources type checking: add description of data segment type 2023-07-13 16:05:24 +01:00
test TypeGraph: Introduce TypeGraphParser to simplify unit testing 2023-07-13 17:38:49 +01:00
tools Take list of pass-through types from config instead of hardcoding 2023-07-05 13:39:19 +01:00
types typed data segment: fix vector handler for custom allocators 2023-07-05 19:06:18 +01:00
website Build with tests by default 2023-04-05 15:53:15 +01:00
.clang-format clang-format: set BinPackParameters=false 2023-04-24 11:28:22 +02:00
.clang-tidy Initial commit 2022-12-19 06:37:51 -08:00
.editorconfig Initial commit 2022-12-19 06:37:51 -08:00
.git-blame-ignore-revs Initial commit 2022-12-19 06:37:51 -08:00
.gitignore Delete old files from test/ 2023-01-27 12:45:35 +00:00
.gitmodules drgn: add split dwarf support 2023-06-02 17:52:53 +02:00
CHANGELOG.md Initial commit 2022-12-19 06:37:51 -08:00
CMakeLists.txt add exporters::TypeCheckingWalker 2023-07-13 16:05:24 +01:00
CODE_OF_CONDUCT.md Initial commit 2022-12-19 06:37:51 -08:00
CONTRIBUTING.md Initial commit 2022-12-19 06:37:51 -08:00
dev.oid.toml Take list of pass-through types from config instead of hardcoding 2023-07-05 13:39:19 +01:00
LICENSE Initial commit 2022-12-19 06:37:51 -08:00
oss.oid.toml Initial commit 2022-12-19 06:37:51 -08:00
README.md Display the logo (#116) 2023-03-31 10:48:18 +01:00

object-introspection

Matrix Chat

OI Logo

Object Introspection is a memory profiling technology for C++ objects. It provides the ability to dynamically instrument applications to capture the precise memory occupancy of entire object hierarchies including all containers and dynamic allocations. All this with no code modification or recompilation!

For more information on the technology and how to get started applying it to your applications please check out the Object Introspection website.

Join the Object Introspection community

See the CONTRIBUTING file for how to help out.

License

Object Introspection is licensed under the Apache 2.0 License.