A C++ library of designs, containing flexible implementations of
common design patterns and idioms.
Dwarves is a set of tools that use the debugging information inserted in ELF
binaries by compilers such as GCC, used by well known debuggers such as GDB,
and more recent ones such as systemtap.
Utilities in the dwarves suite include pahole, that can be used to find
alignment holes in structs and classes in languages such as C, C++, but not
limited to these.
It also extracts other information such as CPU cacheline alignment, helping
pack those structures to achieve more cache hits.
A diff like tool, codiff can be used to compare the effects changes in source
code generate on the resulting binaries.
Another tool is pfunct, that can be used to find all sorts of information about
functions, inlines, decisions made by the compiler about inlining, etc.
Lua 5.0.x bindings for ptys (pseudo-terminals.)
A small sysctl(3) interface for lua
Luabind is a library that helps you create bindings between C++ and
Lua. It has the ability to expose functions and classes, written
in C++, to Lua. It will also supply the functionality to define
classes in lua and let them derive from other lua classes or C++
classes. Lua classes can override virtual functions from their C++
baseclasses. It is written towards Lua 5.x, and does not work with
Lua 4.
It is implemented utilizing template meta programming. That means
that you don't need an extra preprocess pass to compile your project
(it is done by the compiler). It also means you don't (usually)
have to know the exact signature of each function you register,
since the library will generate code depending on the compile-time
type of the function (which includes the signature). The main
drawback of this approach is that the compilation time will increase
for the file that does the registration, it is therefore recommended
that you register everything in the same cpp-file.
LuaFileSystem is a Lua library developed to complement the
set of functions related to file systems offered by the
standard Lua distribution.
LuaFileSystem offers a portable way to access the underlying
directory structure and file attributes.
LuaJava allows Java components to be accessed from Lua using the same syntax
that is used for accessing Lua`s native objects, without any need for
declarations or any kind of preprocessing, and also allows Java to implement
an interface using Lua.
Lutok is a lightweight C++ API library for Lua.
Lutok provides thin C++ wrappers around the Lua C API to ease the
interaction between C++ and Lua. These wrappers make intensive use of
RAII to prevent resource leakage, expose C++-friendly data types, report
errors by means of exceptions and ensure that the Lua stack is always
left untouched in the face of errors. The library also provides a small
subset of miscellaneous utility functions built on top of the wrappers.
Lutok focuses on providing a clean and safe C++ interface; the drawback
is that it is not suitable for performance-critical environments. In
order to implement error-safe C++ wrappers on top of a Lua C binary
library, Lutok adds several layers or abstraction and error checking
that go against the original spirit of the Lua C API and thus degrade
performance.
bitlib is a tiny library for bitwise operations.
Lua BitOp is a C extension module for Lua 5.1/5.2 which adds bitwise operations
on numbers.