Package pyplusplus

# Package pyplusplus

source code

Py++ - Boost.Python code generator ========================================

This package (together with the accompanying pygccxml package and Boost.Python) assists you in creating Python bindings for a C/C++ library. This is done by parsing a set of header files that contain all the stuff you want to expose in Python. The result of this parsing step is a declaration tree that represents all declarations found in the headers. You can then modify (decorate) this tree to customize the bindings. After that, a code creators tree is created where each node represents a block of C++ source code. So you can change any piece of code befor it is written to disk. As a last step, these source code blocks are finally written into one or more C++ source files, which can then be compiled to generate the final Python module.

If you are just starting with Py++, then consider to read documentation of module_builder package.

Version: 1.0.0

Submodules

- pyplusplus._logging_: defines logger classes
  - pyplusplus._logging_.multi_line_formatter: defines a class that helps to format user messages
- pyplusplus.code_creators: Code creators.
  - pyplusplus.code_creators.algorithm: This module is a collection of unrelated algorithms, that works on code creators tree.
  - pyplusplus.code_creators.array_1_registrator
  - pyplusplus.code_creators.calldef
  - pyplusplus.code_creators.calldef_transformed
  - pyplusplus.code_creators.calldef_utils
  - pyplusplus.code_creators.class_declaration
  - pyplusplus.code_creators.code_creator
  - pyplusplus.code_creators.compound
  - pyplusplus.code_creators.ctypes_integration_creators
  - pyplusplus.code_creators.custom
  - pyplusplus.code_creators.declaration_based
  - pyplusplus.code_creators.enum
  - pyplusplus.code_creators.exception_translator
  - pyplusplus.code_creators.global_variable
  - pyplusplus.code_creators.include
  - pyplusplus.code_creators.include_directories
  - pyplusplus.code_creators.indexing_suites
  - pyplusplus.code_creators.instruction
  - pyplusplus.code_creators.license
  - pyplusplus.code_creators.member_variable
  - pyplusplus.code_creators.module
  - pyplusplus.code_creators.module_body
  - pyplusplus.code_creators.namespace
  - pyplusplus.code_creators.opaque_type_registrator
  - pyplusplus.code_creators.properties
  - pyplusplus.code_creators.registration_based
  - pyplusplus.code_creators.scoped
  - pyplusplus.code_creators.smart_pointers
  - pyplusplus.code_creators.target_configuration
  - pyplusplus.code_creators.unnamed_enum
- pyplusplus.code_repository: Code repository package is used as a repository of C++ classes/functions.
  - pyplusplus.code_repository.array_1: This file contains C++ code needed to export one dimensional static arrays.
  - pyplusplus.code_repository.call_policies: This file contains C++ code - custom call policies
  - pyplusplus.code_repository.convenience: This file contains C++ code needed to export one dimensional static arrays.
  - pyplusplus.code_repository.ctypes_integration: This file contains C++ code needed to export one dimensional static arrays.
  - pyplusplus.code_repository.gil_guard: This file contains C++ code to acquire/release the GIL.
  - pyplusplus.code_repository.named_tuple
  - pyplusplus.code_repository.return_range: This file contains C++ code - "return_range" call policies
- pyplusplus.decl_wrappers: Code generator configuration classes
  - pyplusplus.decl_wrappers.algorithm: Contains few unrelated algorithms, which works on code creators tree
  - pyplusplus.decl_wrappers.call_policies: Contains definition of call policies classes
  - pyplusplus.decl_wrappers.calldef_wrapper: contains classes that allow to configure code generation for free\member functions, operators and etc.
  - pyplusplus.decl_wrappers.class_wrapper: defines class that configure class definition and class declaration exposing
  - pyplusplus.decl_wrappers.decl_wrapper: defines base class for all code generator configuration classes
  - pyplusplus.decl_wrappers.decl_wrapper_printer: defines class that will print in a user friendly format declarations tree and declarations Py++ configuration instructions
  - pyplusplus.decl_wrappers.doc_extractor: defines documentation extractor class interface
  - pyplusplus.decl_wrappers.enumeration_wrapper: defines class that configure enumeration declaration exposing
  - pyplusplus.decl_wrappers.indexing_suite1: defines interface for exposing STD containers, using current version of indexing suite
  - pyplusplus.decl_wrappers.indexing_suite2: defines interface for exposing STD containers, using next version of indexing suite
  - pyplusplus.decl_wrappers.namespace_wrapper: defines class that configure namespace exposing.
  - pyplusplus.decl_wrappers.properties: defines property_t helper class
  - pyplusplus.decl_wrappers.python_traits: defines few "type traits" functions related to C++ Python bindings
  - pyplusplus.decl_wrappers.scopedef_wrapper: defines base class for decl_wrappers.class_t and decl_wrappers.namespace_t classes
  - pyplusplus.decl_wrappers.typedef_wrapper: defines class that configure typedef exposing
  - pyplusplus.decl_wrappers.user_text: defines few classes, used by `decl_wrapper.class_t` class to keep user code
  - pyplusplus.decl_wrappers.variable_wrapper: defines class that configure global and member variable exposing
- pyplusplus.file_writers: This package contains few classes, that writes code_creators.module_t to files.
  - pyplusplus.file_writers.balanced_files: defines a class that writes code_creators.module_t to multiple files
  - pyplusplus.file_writers.class_multiple_files: defines a class that writes code_creators.module_t to multiple files, the class also splits huge C++ classes to few source files
  - pyplusplus.file_writers.md5sum_repository: defines interface for repository of generated files hash
  - pyplusplus.file_writers.multiple_files: defines a class that writes code_creators.module_t to multiple files
  - pyplusplus.file_writers.single_file: defines a class that writes code_creators.module_t to single file
  - pyplusplus.file_writers.writer: defines interface for all classes that writes code_creators.module_t to file(s)
- pyplusplus.function_transformers: This sub-package provides text substitution services for creating C++ functions.
  - pyplusplus.function_transformers.controllers: defines controller classes which help to define the function transformation
  - pyplusplus.function_transformers.function_transformation: This module contains the class function_transformation_t.
  - pyplusplus.function_transformers.templates: defines few templates, which will be used to create a function-wrapper definition.
  - pyplusplus.function_transformers.transformer: This module contains the class transformer_t.
  - pyplusplus.function_transformers.transformers: This module contains the standard argument policy objects.
- pyplusplus.gui: This package provide simple GUI interface.
  - pyplusplus.gui.freeze: this module contains "freeze" functionality.
  - pyplusplus.gui.ui: this module implements GUI.
  - pyplusplus.gui.ui_runner: Py++ user interface runner
  - pyplusplus.gui.wizard: generates Py++ code from the user data
- pyplusplus.messages: This package defines all user messages( warnings + errors ), which will be reported to user.
  - pyplusplus.messages.warnings_: This package defines all user messages (warnings + errors), which will be reported to user.
- pyplusplus.module_builder: This package provides users with simple and convinient interface to Py++ functionality.
  - pyplusplus.module_builder.builder
  - pyplusplus.module_builder.call_policies
- pyplusplus.module_creator
  - pyplusplus.module_creator.call_policies_resolver
  - pyplusplus.module_creator.creator
  - pyplusplus.module_creator.creators_wizard: this module defines few function that will guess what creator(s) should be created for exposing a declaration
  - pyplusplus.module_creator.dependencies_manager: defines class, which informs user about used, but unexposed declarations
  - pyplusplus.module_creator.fake_constructors_manager: defines class, which manages "fake constructors"
  - pyplusplus.module_creator.opaque_types_manager
  - pyplusplus.module_creator.sort_algorithms
  - pyplusplus.module_creator.types_database
- pyplusplus.utils: This module is a collection of unrelated algorithms, that works on code creators tree.

Variables
| msg = `'This revision of Py++ requieres pygccxml revision to be`...``

Variables Details

### msg

Value:

      'This revision of Py++ requieres pygccxml revision to be ' 'greater or
       equal to %d. ' 'Please install right pygccxml version.'