pygccxml.parser.project_reader module¶
- create_cached_source_fc(header, cached_source_file)¶
Creates
parser.file_configuration_t
instance, configured to contain path to GCC-XML generated XML file and C++ source file. If XML file does not exists, it will be created and used for parsing. If XML file exists, it will be used for parsing.- Parameters
header (str) – path to C++ source file
cached_source_file (str) – path to GCC-XML generated XML file
- Return type
parser.file_configuration_t
- create_gccxml_fc(xml_file)¶
Creates
parser.file_configuration_t
instance, configured to contain path to GCC-XML generated XML file.- Parameters
xml_file (str) – path to GCC-XML generated XML file
- Return type
parser.file_configuration_t
- create_source_fc(header)¶
Creates
parser.file_configuration_t
instance, configured to contain path to C++ source file- Parameters
header (str) – path to C++ source file
- Return type
parser.file_configuration_t
- create_text_fc(text)¶
Creates
parser.file_configuration_t
instance, configured to contain Python string, that contains valid C++ code- Parameters
text (str) – C++ code
- Return type
parser.file_configuration_t
- class file_configuration_t(data, start_with_declarations=None, content_type='standard source file', cached_source_file=None)¶
Bases:
object
source code location configuration.
The class instance uses “variant” interface to represent the following data:
path to a C++ source file
path to GCC-XML generated XML file
path to a C++ source file and path to GCC-XML generated file
In this case, if XML file does not exists, it will be created. Next time you will ask to parse the source file, the XML file will be used instead.
Small tip: you can setup your makefile to delete XML files every time, the relevant source file was changed.
Python string, that contains valid C++ code
There are few functions, that will help you to construct
file_configuration_t
object:- class CONTENT_TYPE¶
Bases:
object
- CACHED_SOURCE_FILE = 'cached source file'¶
- GCCXML_GENERATED_FILE = 'gccxml generated file'¶
- STANDARD_SOURCE_FILE = 'standard source file'¶
- TEXT = 'text'¶
- property cached_source_file¶
- property content_type¶
- property data¶
- property start_with_declarations¶
- class project_reader_t(config, cache=None, decl_factory=None)¶
Bases:
object
parses header files and returns the contained declarations
- static get_os_file_names(files)¶
returns file names
- Parameters
files (list) – list of strings andor
file_configuration_t
instances.
- read_files(files, compilation_mode='file by file')¶
parses a set of files
- Parameters
files (list) – list of strings andor
file_configuration_t
instances.compilation_mode (
COMPILATION_MODE
) – determines whether the files are parsed individually or as one single chunk
- Return type
[
declaration_t
]
- read_string(content)¶
Parse a string containing C/C++ source code.
- Parameters
content (str) – C/C++ source code.
- Return type
Declarations
- read_xml(file_configuration)¶
parses C++ code, defined on the file_configurations and returns GCCXML generated file content
- property xml_generator_from_xml_file¶
Configuration object containing information about the xml generator read from the xml file.
- Returns
configuration object
- Return type
utils.xml_generators