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 fileParameters: 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++ codeParameters: 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'¶
-
-
cached_source_file
¶
-
content_type
¶
-
data
¶
-
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
]- files (list) – list of strings andor
-
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
-
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
-
static