boost::openmethod::policies

Namespace for policies.

Description

Classes with snake case names are "blueprints", i.e. exposition‐only classes that describe the requirements for policies of a given category. Classes implementing these blueprints must provide a fn<Registry> metafunction that conforms to the blueprint's requirements.

Types

Name

Description

ErrorHandlerFn

Blueprint for error_handler metafunctions (exposition only).

InitializeClass

Class information for initializing a policy (exposition only).

InitializeContext

Context for initializing a policy (exposition only).

OutputFn

Blueprint for output metafunctions (exposition only).

RttiFn

Blueprint for rtti metafunctions (exposition only).

TypeHashFn

Blueprint for type_hash metafunctions (exposition only).

VptrFn

Blueprint for vptr metafunctions (exposition only).

default_error_handler

Calls a std::function with the error.

deferred_static_rtti

Policy for deferred type id collection.

error_handler

Policy for error handling.

fast_perfect_hash

Hash type ids using a fast, perfect hash function.

indirect_vptr

Policy to add an indirection to pointers to v‐tables.

output

Policy for writing diagnostics and trace.

rtti

Policy for manipulating type information.

runtime_checks

Policy for post‐initialize runtime checks.

static_rtti

Minimal implementation of the rtti policy.

std_rtti

Implements the rtti policy using standard RTTI.

stderr_output

Writes to the C standard error stream.

throw_error_handler

Throws error as an exception.

type_hash

Policy for hashing type ids.

vptr

Policy for v‐table pointer acquisition.

vptr_map

Stores v‐table pointers in a map keyed by `type_id`s.

vptr_vector

Stores v‐table pointers in a vector.

See Also

registry for a complete explanation of registries and policies.

Created with MrDocs