SYMBOL INDEX (207 symbols across 41 files) FILE: emitters/yaml_base_emitter.cpp function update_cleanup (line 38) | YAML::Node update_cleanup(const YAML::Node& node) { function yaml_to_json (line 66) | hyde::json yaml_to_json(const YAML::Node& yaml) { function json_to_yaml (line 98) | YAML::Node json_to_yaml(const hyde::json& json) { function json_to_yaml_ordered (line 144) | YAML::Node json_to_yaml_ordered(hyde::json j) { function fixup_hyde_subfield (line 198) | hyde::json fixup_hyde_subfield(hyde::json&& j) { type hyde (line 241) | namespace hyde { function json (line 249) | json yaml_base_emitter::base_emitter_node(std::string layout, function object_keys (line 985) | std::vector object_keys(const json& j) { function move_append (line 996) | inline void move_append(T& dst, T&& src) { type transcribe_pair (line 1000) | struct transcribe_pair { function transcribe_pairs (line 1011) | transcribe_pairs derive_transcribe_pairs(const json& src, const json& ... function fnv_1a (line 1236) | inline std::uint64_t fnv_1a(const std::string& s) { function load_yaml (line 1352) | auto load_yaml(const std::filesystem::path& path) try { function documentation (line 1361) | documentation parse_documentation(const std::filesystem::path& path, b... function write_documentation (line 1402) | bool write_documentation(const documentation& docs, const std::filesys... FILE: emitters/yaml_base_emitter.hpp type hyde (line 21) | namespace hyde { type file_checker (line 25) | struct file_checker { method exists (line 26) | bool exists(std::filesystem::path p) { method checked (line 32) | bool checked(const std::filesystem::path& p) { function has_json_flag (line 50) | inline bool has_json_flag(const json& j, const char* k) { type yaml_base_emitter (line 56) | struct yaml_base_emitter { method yaml_base_emitter (line 58) | yaml_base_emitter(std::filesystem::path src_root, method dst_path_append (line 177) | std::filesystem::path dst_path_append(std::filesystem::path p) { ret... FILE: emitters/yaml_base_emitter_fwd.hpp type hyde (line 24) | namespace hyde { type attribute_category (line 36) | enum class attribute_category { disabled, required, optional, deprecat... function is_tag (line 53) | static inline bool is_tag(const std::string& s) { return s.substr(0, 2... type emit_options (line 57) | struct emit_options { type documentation (line 64) | struct documentation { FILE: emitters/yaml_class_emitter.cpp type hyde (line 24) | namespace hyde { FILE: emitters/yaml_class_emitter.hpp type hyde (line 20) | namespace hyde { type yaml_class_emitter (line 24) | struct yaml_class_emitter : public yaml_base_emitter { method yaml_class_emitter (line 25) | explicit yaml_class_emitter(std::filesystem::path src_root, FILE: emitters/yaml_enum_emitter.cpp type hyde (line 20) | namespace hyde { FILE: emitters/yaml_enum_emitter.hpp type hyde (line 20) | namespace hyde { type yaml_enum_emitter (line 24) | struct yaml_enum_emitter : public yaml_base_emitter { method yaml_enum_emitter (line 25) | explicit yaml_enum_emitter(std::filesystem::path src_root, FILE: emitters/yaml_function_emitter.cpp type hyde (line 23) | namespace hyde { FILE: emitters/yaml_function_emitter.hpp type hyde (line 20) | namespace hyde { type yaml_function_emitter (line 24) | struct yaml_function_emitter : public yaml_base_emitter { method yaml_function_emitter (line 25) | explicit yaml_function_emitter(std::filesystem::path src_root, method set_key (line 33) | void set_key(std::string key) { _key = std::move(key); } FILE: emitters/yaml_library_emitter.cpp type hyde (line 20) | namespace hyde { FILE: emitters/yaml_library_emitter.hpp type hyde (line 20) | namespace hyde { type yaml_library_emitter (line 24) | struct yaml_library_emitter : public yaml_base_emitter { method yaml_library_emitter (line 25) | explicit yaml_library_emitter(std::filesystem::path src_root, FILE: emitters/yaml_sourcefile_emitter.cpp type hyde (line 20) | namespace hyde { FILE: emitters/yaml_sourcefile_emitter.hpp type hyde (line 20) | namespace hyde { type yaml_sourcefile_emitter (line 24) | struct yaml_sourcefile_emitter : public yaml_base_emitter { method yaml_sourcefile_emitter (line 25) | explicit yaml_sourcefile_emitter(std::filesystem::path src_root, FILE: include/autodetect.hpp type hyde (line 24) | namespace hyde { FILE: include/json_fwd.hpp type hyde (line 22) | namespace hyde { FILE: include/output_yaml.hpp type hyde (line 23) | namespace hyde { type yaml_mode (line 27) | enum class yaml_mode { FILE: matchers/class_matcher.cpp class FindDestructor (line 37) | class FindDestructor : public RecursiveASTVisitor { method VisitDecl (line 39) | bool VisitDecl(const Decl* d) { class FindConstructor (line 52) | class FindConstructor : public RecursiveASTVisitor { method VisitDecl (line 54) | bool VisitDecl(const Decl* d) { class FindStaticMembers (line 67) | class FindStaticMembers : public RecursiveASTVisitor { method FindStaticMembers (line 69) | FindStaticMembers(const hyde::processing_options& options) method VisitVarDecl (line 71) | bool VisitVarDecl(const VarDecl* d) { type hyde (line 95) | namespace hyde { function json (line 99) | json fixup_short_name(json&& method) { FILE: matchers/class_matcher.hpp type hyde (line 31) | namespace hyde { class ClassInfo (line 35) | class ClassInfo : public MatchFinder::MatchCallback { method ClassInfo (line 37) | explicit ClassInfo(processing_options options) : _options(std::move(... method json (line 43) | json getJSON() { return _j; } method DeclarationMatcher (line 45) | static DeclarationMatcher GetMatcher() { return cxxRecordDecl().bind... FILE: matchers/enum_matcher.cpp type hyde (line 36) | namespace hyde { FILE: matchers/enum_matcher.hpp type hyde (line 31) | namespace hyde { class EnumInfo (line 35) | class EnumInfo : public MatchFinder::MatchCallback { method EnumInfo (line 37) | EnumInfo(processing_options options) : _options(std::move(options)) { method json (line 43) | json getJSON() { return _j; } method DeclarationMatcher (line 45) | static DeclarationMatcher GetMatcher() { return enumDecl().bind("enu... FILE: matchers/function_matcher.cpp type hyde (line 37) | namespace hyde { FILE: matchers/function_matcher.hpp type hyde (line 31) | namespace hyde { class FunctionInfo (line 35) | class FunctionInfo : public MatchFinder::MatchCallback { method FunctionInfo (line 37) | FunctionInfo(processing_options options) : _options(std::move(option... method json (line 43) | json getJSON() { return _j; } method DeclarationMatcher (line 45) | static DeclarationMatcher GetMatcher() { return functionDecl().bind(... FILE: matchers/matcher_fwd.hpp type hyde (line 20) | namespace hyde { type ToolAccessFilter (line 24) | enum ToolAccessFilter { type processing_options (line 32) | struct processing_options { FILE: matchers/namespace_matcher.cpp type hyde (line 36) | namespace hyde { FILE: matchers/namespace_matcher.hpp type hyde (line 31) | namespace hyde { class NamespaceInfo (line 35) | class NamespaceInfo : public MatchFinder::MatchCallback { method NamespaceInfo (line 37) | NamespaceInfo(processing_options options) : _options(std::move(optio... method json (line 43) | json getJSON() { return _j; } method DeclarationMatcher (line 45) | static DeclarationMatcher GetMatcher() { return namespaceDecl().bind... FILE: matchers/typealias_matcher.cpp type hyde (line 36) | namespace hyde { FILE: matchers/typealias_matcher.hpp type hyde (line 31) | namespace hyde { class TypeAliasInfo (line 35) | class TypeAliasInfo : public MatchFinder::MatchCallback { method TypeAliasInfo (line 37) | TypeAliasInfo(processing_options options) : _options(std::move(optio... method json (line 43) | json getJSON() { return _j; } method DeclarationMatcher (line 45) | static DeclarationMatcher GetMatcher() { return typeAliasDecl().bind... FILE: matchers/typedef_matcher.cpp type hyde (line 36) | namespace hyde { FILE: matchers/typedef_matcher.hpp type hyde (line 31) | namespace hyde { class TypedefInfo (line 35) | class TypedefInfo : public MatchFinder::MatchCallback { method TypedefInfo (line 37) | TypedefInfo(processing_options options) : _options(std::move(options... method json (line 43) | json getJSON() { return _j; } method DeclarationMatcher (line 45) | static DeclarationMatcher GetMatcher() { return typedefDecl().bind("... FILE: matchers/utilities.cpp function trim_front (line 51) | void trim_front(std::string& text) { function trim_back (line 62) | void trim_back(std::string& src) { function chomp (line 73) | void chomp(std::string& src) { function to_string (line 82) | std::string to_string(const ASTContext* n, SourceRange range, bool as_to... function to_string (line 94) | std::string to_string(const ASTContext* n, const clang::TemplateDecl* te... function ForEachParent (line 117) | void ForEachParent(const Decl* d, F f) { type signature_options (line 141) | enum class signature_options : std::uint8_t { function flag_set (line 148) | bool flag_set(const T& value, const T& flag) { function GetSignature (line 156) | std::string GetSignature(const ASTContext* n, function GetShortName (line 289) | std::string GetShortName(const clang::ASTContext* n, const clang::Functi... function GetParents (line 311) | hyde::json GetParents(const ASTContext* n, const Decl* d) { function to_string_view (line 352) | inline std::string_view to_string_view(StringRef string) { function to_string_view (line 358) | inline std::string_view to_string_view(ParamCommandPassDirection x) { function ProcessComment (line 371) | hyde::optional_json ProcessComment(const ASTContext& n, function group_comments_by_kind (line 607) | hyde::optional_json group_comments_by_kind(hyde::json comments) { type hyde (line 627) | namespace hyde { function json (line 631) | json GetParentNamespaces(const ASTContext* n, const Decl* d) { function json (line 637) | json GetParentCXXRecords(const ASTContext* n, const Decl* d) { function optional_json (line 643) | optional_json DetailCXXRecordDecl(const hyde::processing_options& opti... function json (line 664) | json GetTemplateParameters(const ASTContext* n, const clang::TemplateD... function optional_json (line 700) | optional_json DetailFunctionDecl(const hyde::processing_options& optio... function GetArgumentList (line 791) | std::string GetArgumentList(const llvm::ArrayRef ar... function PathCheck (line 809) | bool PathCheck(const std::vector& paths, const Decl* d, A... function NamespaceBlacklist (line 818) | bool NamespaceBlacklist(const std::vector& blacklist, con... function AccessCheck (line 832) | bool AccessCheck(ToolAccessFilter hyde_filter, clang::AccessSpecifier ... function PostProcessTypeParameter (line 863) | std::string PostProcessTypeParameter(const clang::Decl* decl, std::str... function ReplaceAll (line 939) | std::string ReplaceAll(std::string str, const std::string& substr, con... function PostProcessSpacing (line 950) | std::string PostProcessSpacing(std::string type) { return ReplaceAll(t... function PostProcessType (line 954) | std::string PostProcessType(const clang::Decl* decl, std::string type) { function ProcessComments (line 962) | hyde::optional_json ProcessComments(const Decl* d) { function derive_transcription_src_path (line 993) | std::filesystem::path derive_transcription_src_path(const std::filesys... function diff_score (line 1058) | std::size_t diff_score(std::string_view src, std::string_view dst) { FILE: matchers/utilities.hpp type hyde (line 34) | namespace hyde { function to_string (line 83) | inline std::string to_string(clang::AccessSpecifier access) { function to_string (line 99) | inline std::string to_string(const clang::Decl* decl, clang::QualType ... function optional_json (line 109) | optional_json StandardDeclInfo(const hyde::processing_options& options... FILE: sources/autodetect.cpp function split (line 33) | std::vector split(const char* p, std::size_t n) { function file_slurp (line 51) | std::vector file_slurp(std::filesystem::path p) { function trim_front (line 63) | std::string trim_front(std::string s) { function trim_back (line 77) | std::string trim_back(std::string s) { function chomp (line 90) | std::string chomp(std::string src) { return trim_back(trim_front(std::mo... function exec (line 94) | std::string exec(const char* cmd) { function autodetect_include_paths (line 115) | std::vector autodetect_include_paths() { type hyde (line 162) | namespace hyde { function autodetect_toolchain_paths (line 166) | std::vector autodetect_toolchain_paths() { function autodetect_resource_directory (line 172) | std::filesystem::path autodetect_resource_directory() { function autodetect_sysroot_directory (line 178) | std::filesystem::path autodetect_sysroot_directory() { FILE: sources/main.cpp function make_absolute (line 57) | std::filesystem::path make_absolute(std::filesystem::path path) { function make_absolute (line 73) | std::string make_absolute(std::string path_string) { function make_absolute (line 79) | std::vector make_absolute(std::vector paths) { type ToolMode (line 95) | enum ToolMode { ToolModeJSON, ToolModeYAMLValidate, ToolModeYAMLUpdate, ... type ToolDiagnostic (line 96) | enum ToolDiagnostic { ToolDiagnosticQuiet, ToolDiagnosticVerbose, ToolDi... function IsVerbose (line 247) | bool IsVerbose() { function optional_path_t (line 257) | optional_path_t find_hyde_config(std::filesystem::path src_file) { function load_hyde_config (line 296) | std::pair load_hyde_config( type command_line_args (line 318) | struct command_line_args { function command_line_args (line 323) | command_line_args integrate_hyde_config(int argc, const char** argv) { function CommonOptionsParser (line 407) | CommonOptionsParser MakeOptionsParser(int argc, const char** argv) { function fixup_have_file_subfield (line 419) | bool fixup_have_file_subfield(const std::filesystem::path& path) { function source_paths (line 437) | std::vector source_paths(int argc, const char** argv) { function main (line 443) | int main(int argc, const char** argv) try { FILE: sources/output_yaml.cpp type hyde (line 31) | namespace hyde { function output_yaml (line 35) | void output_yaml(json j, FILE: test_files/classes.cpp class class_example (line 22) | class class_example { type color (line 28) | enum class color { type nested_class_example (line 41) | struct nested_class_example { method class_example (line 58) | class_example() = default; method class_example (line 62) | explicit class_example(int x) : _x(x) {} method member_function_trailing_return_type (line 67) | auto member_function_trailing_return_type() const -> int { return _x; } method member_function (line 71) | auto member_function() { return _x *= 2; } method static_method (line 126) | static int static_method() { return 0; } method template_member_function (line 130) | void template_member_function() {} type specialization_example (line 152) | struct specialization_example { method as_tuple (line 153) | constexpr auto as_tuple() const { return std::forward_as_tuple(); } type specialization_example (line 159) | struct specialization_example { method as_tuple (line 165) | constexpr auto as_tuple() const { return std::forward_as_tuple(_first); } type specialization_example (line 171) | struct specialization_example { method as_tuple (line 174) | constexpr auto as_tuple() const { return std::forward_as_tuple(_first); } class partial_specialization_example (line 182) | class partial_specialization_example { class partial_specialization_example (line 190) | class partial_specialization_example { FILE: test_files/comments.cpp type compiler_generated (line 17) | struct compiler_generated { method compiler_generated (line 18) | compiler_generated() = delete; method compiler_generated (line 19) | compiler_generated(const compiler_generated&) = default; method assign (line 22) | void assign(const compiler_generated& rhs) { type some_struct (line 33) | struct some_struct { type some_other_struct (line 58) | struct some_other_struct : public some_struct { FILE: test_files/enums.cpp type color_channel (line 19) | enum class color_channel { type untyped (line 32) | enum untyped { FILE: test_files/functions.cpp function nullary_function_example (line 16) | int nullary_function_example() { return 0; } function binary_function_example (line 23) | int binary_function_example(int first, int second) { return 0; } function overloaded (line 29) | auto overloaded(int first) -> float { return first; } function overloaded (line 35) | auto overloaded(int first, int second) -> double { return first * second; } function overloaded (line 42) | auto overloaded(int first, int second, int third) -> float { return firs... function static_function_example (line 47) | static int static_function_example() { return 0; } function static_auto_function_example (line 52) | static auto static_auto_function_example() { return 0; } function static_trailing_type_function_example (line 57) | static auto static_trailing_type_function_example() -> int { return 0; } function template_function_example (line 68) | int template_function_example() { FILE: test_files/namespaces.cpp type foo (line 14) | namespace foo { type bar::baz (line 18) | namespace bar::baz { FILE: test_files/point.cpp type point (line 21) | struct point { method origin (line 29) | static constexpr auto origin() { return point(); } method point (line 33) | constexpr point() noexcept = default; method point (line 38) | constexpr point(T _x, T _y) noexcept : x(std::move(_x)), y(std::move(_... method point (line 54) | inline constexpr point operator-(const point& a, const point& b) { method point (line 61) | constexpr point& operator-=(const point& a) { FILE: test_files/typedef_and_alias.cpp type template_example (line 27) | struct template_example { type template_example_instantiator (line 49) | struct template_example_instantiator {