|
CPP-TOOLBOX
|
Classes | |
| class | AnyOfParser |
| class | CharParser |
| class | CommaSeparatedTupleParser |
| class | DecimalLiteralParser |
| class | DeferredParser |
| class | IdentifierParser |
| class | IfThenParser |
| class | LiteralParser |
| class | MatchingPairParser |
| class | MatchingStringPairParser |
| class | NestedStringPairParser |
| class | OptionalParser |
| class | OptionalWhitespaceParser |
| struct | ParseResult |
| class | RepeatingParser |
| class | SequenceParser |
| class | TransformParser |
| class | TypeParser |
| class | TypeQualifierSequenceParser |
| class | UntilCharParser |
| class | VariableParser |
Typedefs | |
| using | CharParserPtr = std::shared_ptr<CharParser> |
Functions | |
| ParseResult | clean_parse_result (const ParseResult &r) |
| const cpp_parsing::ParseResult * | find_first_by_name (const cpp_parsing::ParseResult *root, const std::string &target) |
| const cpp_parsing::ParseResult * | find_first_name_contains (const cpp_parsing::ParseResult *root, const std::string &substr) |
| void | collect_by_name (const cpp_parsing::ParseResult *root, const std::string &target, std::vector< const cpp_parsing::ParseResult * > &out) |
| std::vector< std::pair< std::string, std::string > > | bfs_collect_matches (const cpp_parsing::ParseResult *root, const std::vector< std::string > &names) |
| std::string | node_text (const cpp_parsing::ParseResult *node) |
| std::ostream & | print_parse_result (std::ostream &os, const ParseResult &result, int indent) |
| std::ostream & | operator<< (std::ostream &os, const ParseResult &result) |
| CharParserPtr | optional_whitespace () |
| CharParserPtr | identifier () |
| CharParserPtr | variable () |
| CharParserPtr | base_type () |
| CharParserPtr | type_qualifier_sequence () |
| CharParserPtr | until_char (std::vector< char > target_chars, bool inclusive, bool ignore_in_strings_and_chars, const std::string &name) |
| CharParserPtr | literal (const std::string &s) |
| CharParserPtr | matching_string_pair (const std::string &name, std::string left, std::string right) |
| CharParserPtr | matching_pair (CharParserPtr left_parser, CharParserPtr right_parser, const std::string &name) |
| CharParserPtr | nested_string_pair (CharParserPtr parser, const std::string &name, std::string left, std::string right) |
| CharParserPtr | repeating (CharParserPtr parser, const std::string &name) |
| CharParserPtr | optional (CharParserPtr parser, const std::string &name) |
| CharParserPtr | deferred () |
| CharParserPtr | if_then (std::shared_ptr< CharParser > condition_parser, std::shared_ptr< CharParser > then_parser, const std::string &name) |
| CharParserPtr | any_of (std::vector< CharParserPtr > parsers, const std::string &name) |
| CharParserPtr | sequence (std::vector< CharParserPtr > parsers, const std::string &name) |
| CharParserPtr | not_any_of (std::shared_ptr< CharParser > inner, std::unordered_set< std::string > forbidden, std::string name) |
| std::string | remove_macros (const std::string &code) |
| std::string | remove_comments_from_file (const std::string &filename) |
| std::unordered_map< std::string, std::vector< std::string > > | collect_matches_by_parser_name (const ParseResult &result, const std::vector< std::string > &target_names) |
| ParseResult | parse_source_or_header_file (const std::string &source_code_path) |
| std::unordered_map< std::string, std::vector< std::string > > | get_parser_name_to_matches_for_source_file (const std::string &source_code_path) |
| std::vector< std::string > | extract_all_matches_for_a_particular_parser (const std::string &source_code_path, const std::string &parser_name) |
| std::vector< std::string > | extract_top_level_functions (const std::string &source_code_path) |
| std::vector< std::string > | extract_top_level_function_declarations (const std::string &header_code_path) |
| std::vector< std::string > | extract_top_level_classes (const std::string &source_code_path) |
| std::vector< std::string > | extract_top_level_enum_classes (const std::string &source_code_path) |
| CharParserPtr | get_templated_type_parser () |
| std::string | truncate (const std::string &s, int cutoff=50) |
| std::string | get_next_part_of_string (const std::string &input, int start, int lookahead=50) |
| std::vector< CharParserPtr > | create_literal_parsers (std::vector< std::string > literals) |
| void | log_start_of_parser (const std::string &name, const std::string &input, size_t start) |
| void | test_parser (const std::string &input, const CharParserPtr &parser) |
| std::vector< CharParserPtr > | whitespace_between (const std::vector< CharParserPtr > &base_parsers) |
| CharParserPtr | comma_separated_sequence_parser (CharParserPtr element_parser) |
| CharParserPtr | optionally_namespaced_identifier () |
| CharParserPtr | optional_reference_or_pointer () |
| CharParserPtr | add_optional_type_surroundings (CharParserPtr base_parser) |
| CharParserPtr | lambda_type_parser () |
| std::vector< CharParserPtr > | make_operator_literals () |
| void | test () |
| using cpp_parsing::CharParserPtr = std::shared_ptr<CharParser> |
|
inline |
| CharParserPtr cpp_parsing::any_of | ( | std::vector< CharParserPtr > | parsers, |
| const std::string & | name ) |
| CharParserPtr cpp_parsing::base_type | ( | ) |
| std::vector< std::pair< std::string, std::string > > cpp_parsing::bfs_collect_matches | ( | const cpp_parsing::ParseResult * | root, |
| const std::vector< std::string > & | names ) |
| ParseResult cpp_parsing::clean_parse_result | ( | const ParseResult & | r | ) |
| void cpp_parsing::collect_by_name | ( | const cpp_parsing::ParseResult * | root, |
| const std::string & | target, | ||
| std::vector< const cpp_parsing::ParseResult * > & | out ) |
| std::unordered_map< std::string, std::vector< std::string > > cpp_parsing::collect_matches_by_parser_name | ( | const ParseResult & | result, |
| const std::vector< std::string > & | target_names ) |
|
inline |
|
inline |
| CharParserPtr cpp_parsing::deferred | ( | ) |
| std::vector< std::string > cpp_parsing::extract_all_matches_for_a_particular_parser | ( | const std::string & | source_code_path, |
| const std::string & | parser_name ) |
| std::vector< std::string > cpp_parsing::extract_top_level_classes | ( | const std::string & | source_code_path | ) |
| std::vector< std::string > cpp_parsing::extract_top_level_enum_classes | ( | const std::string & | source_code_path | ) |
| std::vector< std::string > cpp_parsing::extract_top_level_function_declarations | ( | const std::string & | header_code_path | ) |
| std::vector< std::string > cpp_parsing::extract_top_level_functions | ( | const std::string & | source_code_path | ) |
| const cpp_parsing::ParseResult * cpp_parsing::find_first_by_name | ( | const cpp_parsing::ParseResult * | root, |
| const std::string & | target ) |
| const cpp_parsing::ParseResult * cpp_parsing::find_first_name_contains | ( | const cpp_parsing::ParseResult * | root, |
| const std::string & | substr ) |
|
inline |
| std::unordered_map< std::string, std::vector< std::string > > cpp_parsing::get_parser_name_to_matches_for_source_file | ( | const std::string & | source_code_path | ) |
| CharParserPtr cpp_parsing::get_templated_type_parser | ( | ) |
| CharParserPtr cpp_parsing::identifier | ( | ) |
| CharParserPtr cpp_parsing::if_then | ( | std::shared_ptr< CharParser > | condition_parser, |
| std::shared_ptr< CharParser > | then_parser, | ||
| const std::string & | name ) |
|
inline |
| CharParserPtr cpp_parsing::literal | ( | const std::string & | s | ) |
|
inline |
|
inline |
| CharParserPtr cpp_parsing::matching_pair | ( | CharParserPtr | left_parser, |
| CharParserPtr | right_parser, | ||
| const std::string & | name ) |
| CharParserPtr cpp_parsing::matching_string_pair | ( | const std::string & | name, |
| std::string | left, | ||
| std::string | right ) |
| CharParserPtr cpp_parsing::nested_string_pair | ( | CharParserPtr | parser, |
| const std::string & | name, | ||
| std::string | left, | ||
| std::string | right ) |
| std::string cpp_parsing::node_text | ( | const cpp_parsing::ParseResult * | node | ) |
| CharParserPtr cpp_parsing::not_any_of | ( | std::shared_ptr< CharParser > | inner, |
| std::unordered_set< std::string > | forbidden, | ||
| std::string | name ) |
| std::ostream & cpp_parsing::operator<< | ( | std::ostream & | os, |
| const ParseResult & | result ) |
| CharParserPtr cpp_parsing::optional | ( | CharParserPtr | parser, |
| const std::string & | name ) |
|
inline |
| CharParserPtr cpp_parsing::optional_whitespace | ( | ) |
|
inline |
| ParseResult cpp_parsing::parse_source_or_header_file | ( | const std::string & | source_code_path | ) |
| std::ostream & cpp_parsing::print_parse_result | ( | std::ostream & | os, |
| const ParseResult & | result, | ||
| int | indent ) |
| std::string cpp_parsing::remove_comments_from_file | ( | const std::string & | filename | ) |
| std::string cpp_parsing::remove_macros | ( | const std::string & | code | ) |
| CharParserPtr cpp_parsing::repeating | ( | CharParserPtr | parser, |
| const std::string & | name ) |
| CharParserPtr cpp_parsing::sequence | ( | std::vector< CharParserPtr > | parsers, |
| const std::string & | name ) |
|
inline |
|
inline |
|
inline |
| CharParserPtr cpp_parsing::type_qualifier_sequence | ( | ) |
| CharParserPtr cpp_parsing::until_char | ( | std::vector< char > | target_chars, |
| bool | inclusive, | ||
| bool | ignore_in_strings_and_chars, | ||
| const std::string & | name ) |
| CharParserPtr cpp_parsing::variable | ( | ) |
|
inline |
|
inline |
|
inline |
| const std::unordered_set<std::string> cpp_parsing::access_specifiers = {"public", "protected", "private"} |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| const std::unordered_set<std::string> cpp_parsing::cpp_built_in_types |
| const std::unordered_set<std::string> cpp_parsing::cpp_keywords |
| const std::vector<std::string> cpp_parsing::cpp_sign_specifier = {"unsigned", "signed"} |
| const std::vector<std::string> cpp_parsing::cpp_size_specifier = {"short", "long", "long long"} |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| const std::vector<std::string> cpp_parsing::overloadable_operators |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |