Package pygccxml
source code
Python GCC-XML front end.
This package provides functionality to extract and inspect
declarations from C/C++ header files. This is accomplished by invoking
the external tool gccxml which parses a header file and dumps the
declarations as a XML file. This XML file is then read by pygccxml and
the contents are made available as appropriate Python objects.
To parse a set of C/C++ header files you use the parse()
function in the parser sub package which returns a tree that contains
all declarations found in the header files. The root of the tree
represents the main namespace ::
and the children nodes
represent the namespace contents such as other namespaces, classes,
functions, etc. Each node in the tree is an object of a type derived from
the declaration_t base class. An inner node is always either
a namespace (namespace_t) or a class (class_t) which are both derived from scopedef_t. Everything else (free functions, member
functions, enumerations, variables, etc.) is always a leaf. You will find
all those declaration classes in the declarations
sub-package.
- pygccxml.declarations: contains classes that describe different C++ declarations
- pygccxml.declarations.algorithm: defines few unrelated algorithms, that works on declarations
- pygccxml.declarations.algorithms_cache: defines class that will keep results of different calculations.
- pygccxml.declarations.call_invocation: free function call parser
- pygccxml.declarations.calldef: defines classes, that describes "callable" declarations
- pygccxml.declarations.class_declaration: defines classes, that describes C++ classes
- pygccxml.declarations.compilers: contains enumeration of all compilers supported by the project
- pygccxml.declarations.container_traits: defines few algorithms, that deals with different properties of std
containers
- pygccxml.declarations.cpptypes: defines classes, that describe C++ types
- pygccxml.declarations.decl_factory: defines default declarations factory class
- pygccxml.declarations.decl_printer: defines class, decl_printer_t that prints declarations tree in a
user friendly format
- pygccxml.declarations.decl_visitor: defines declarations visitor class interface
- pygccxml.declarations.declaration: defines 2 important classes
- pygccxml.declarations.dependencies: this module contains class that keeps dependency information of
some declaration
- pygccxml.declarations.enumeration: defines class, that describes C++ enum
- pygccxml.declarations.filtering
- pygccxml.declarations.filtering': deprecated!
- pygccxml.declarations.function_traits: defines few algorithms, that deals with different properties of
functions
- pygccxml.declarations.matcher
- pygccxml.declarations.matcher': implements few "find" algorithms on declarations tree
- pygccxml.declarations.matchers: defines all "built-in" classes that implement
declarations compare functionality according to some criteria
- pygccxml.declarations.mdecl_wrapper: defines class mdecl_wrapper_t that allows to work on set of
declarations, as it was one declaration.
- pygccxml.declarations.namespace: defines class, that describes C++ namespace declaration
- pygccxml.declarations.pattern_parser: implementation details
- pygccxml.declarations.scopedef: defines base class for namespace_t and class_t classes
- pygccxml.declarations.templates: template instantiation parser
- pygccxml.declarations.type_traits: defines few algorithms, that deals with different properties of C++
types
- pygccxml.declarations.type_visitor: defines types visitor class interface
- pygccxml.declarations.typedef: defines class that describes C++ typedef declaration
- pygccxml.declarations.variable: defines class that describes C++ global and member variable
declaration
- pygccxml.parser: Parser sub-package.
- pygccxml.utils: defines logger classes and few convinience methods, not related to
the declarations tree
|