![]() |
Scarab
v2.9.0
Project 8 C++ Utility Library
|
Internal data structure which holds metadata about a bound function (signature, overloads, etc.) More...
#include <attr.h>
Public Member Functions | |
| function_record () | |
Public Attributes | |
| char * | name = nullptr |
| Function name. More... | |
| char * | doc = nullptr |
| char * | signature = nullptr |
| Human-readable version of the function signature. More... | |
| std::vector< argument_record > | args |
| List of registered keyword arguments. More... | |
| handle(* | impl )(function_call &) = nullptr |
| Pointer to lambda function which converts arguments and performs the actual call. More... | |
| void * | data [3] = { } |
| Storage for the wrapped function pointer and captured data, if any. More... | |
| void(* | free_data )(function_record *ptr) = nullptr |
| Pointer to custom destructor for 'data' (if needed) More... | |
| return_value_policy | policy = return_value_policy::automatic |
| Return value policy associated with this function. More... | |
| bool | is_constructor: 1 |
| True if name == 'init'. More... | |
| bool | is_new_style_constructor: 1 |
True if this is a new-style __init__ defined in detail/init.h More... | |
| bool | is_stateless: 1 |
| True if this is a stateless function pointer. More... | |
| bool | is_operator: 1 |
| True if this is an operator (add), etc. More... | |
| bool | has_args: 1 |
| True if the function has a '*args' argument. More... | |
| bool | has_kwargs: 1 |
| True if the function has a '**kwargs' argument. More... | |
| bool | is_method: 1 |
| True if this is a method. More... | |
| std::uint16_t | nargs |
| Number of arguments (including py::args and/or py::kwargs, if present) More... | |
| PyMethodDef * | def = nullptr |
| Python method object. More... | |
| handle | scope |
| Python handle to the parent scope (a class or a module) More... | |
| handle | sibling |
| Python handle to the sibling function representing an overload chain. More... | |
| function_record * | next = nullptr |
| Pointer to next overload. More... | |
Internal data structure which holds metadata about a bound function (signature, overloads, etc.)
|
inline |
| std::vector<argument_record> args |
| void* data[3] = { } |
| void(* free_data) (function_record *ptr) = nullptr |
| bool has_kwargs |
| handle(* impl) (function_call &) = nullptr |
True if this is a new-style __init__ defined in detail/init.h
| bool is_operator |
| bool is_stateless |
| std::uint16_t nargs |
| function_record* next = nullptr |
| char* signature = nullptr |
1.8.13