###  | # Boost.Python ## Definitions

arity: The number of arguments accepted by a function or member function. Unless otherwise specified, the hidden "`this`" argument to member functions is not counted when specifying arity
ntbs: Null-Terminated Byte String, or `C'-string. C++ string literals are ntbses. An ntbs must never be null.
raise: Exceptions in Python are "raised", not "thrown", as they are in C++. When this documentation says that some Python exception is "raised" in the context of C++ code, it means that the corresponding Python exception is set via the Python/'C' API, and `throw_error_already_set()` is called.
POD: A technical term from the C++ standard. Short for "Plain Ol'Data": A POD-struct is an aggregate class that has no non-static data members of type pointer to member, non-POD-struct, non-POD-union (or array of such types) or reference, and has no user-defined copy assign- ment operator and no user-defined destructor. Similarly, a POD-union is an aggregate union that has no non-static data members of type pointer to member, non-POD-struct, non-POD-union (or array of such types) or reference, and has no user-defined copy assignment operator and no user-defined destructor. A POD class is a class that is either a POD-struct or a POD-union. An aggregate is an array or a class (clause 9) with no user-declared constructors (12.1), no private or protected non-static data members (clause 11), no base classes (clause 10), and no virtual functions (10.3).
ODR: The "One Definition Rule", which says that any entity in a C++ program must have the same definition in all translation units (object files) which make up a program.

Revised 13 November, 2002

© Copyright Dave Abrahams 2002.