Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions docs/mrdocs.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,17 @@
"title": "Include paths",
"type": "array"
},
"inherit-base-members": {
"default": "copy-dependencies",
"description": "Determine how derived classes inherit members of base classes. When set to `never`, derived classes do not inherit members of base classes and only the relationship is stored. When set to `reference`, derived classes list members of base classes but references are still linked to the base class. When set to `copy`, a copy is created for each base symbol as if it was declared in the derived class. If the base class is a dependency, the extraction mode is copied from the new parent. When set to `copy-dependencies`, a reference is created by default and a copy is created when the base class is a dependency.",
"enum": [
"never",
"reference",
"copy",
"copy-dependencies"
],
"title": "Determine how derived classes inherit base members"
},
"input": {
"default": [
"<source-root>/."
Expand Down Expand Up @@ -219,6 +230,16 @@
"title": "Directory or file for generating output",
"type": "string"
},
"overloads": {
"default": true,
"description": "When set to `true`, MrDocs detects function overloads and groups them as a single symbol type.",
"enum": [
true,
false
],
"title": "Detect and group function overloads",
"type": "boolean"
},
"private-bases": {
"default": true,
"description": "Determine whether private base classes should be extracted",
Expand Down
13 changes: 7 additions & 6 deletions include/mrdocs/ADT/Optional.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,9 @@ class Optional
using value_type = T;

constexpr Optional() = default;
constexpr Optional(
Optional const& other) = default;
constexpr Optional& operator=(
Optional const& other) = default;
constexpr Optional(Optional const& other) = default;
constexpr Optional& operator=(Optional const& other) = default;
constexpr Optional& operator=(Optional&& other) = default;

template<class U>
requires std::is_constructible_v<T, U>
Expand All @@ -94,7 +93,7 @@ class Optional
return t_;
}

constexpr const value_type& value() const & noexcept
constexpr value_type const& value() const & noexcept
{
return t_;
}
Expand All @@ -104,7 +103,7 @@ class Optional
return std::move(t_);
}

constexpr const value_type&& value() const && noexcept
constexpr value_type const&& value() const && noexcept
{
return std::move(t_);
}
Expand Down Expand Up @@ -138,6 +137,8 @@ class Optional
{
return ! EmptyPredicate()(t_);
}

auto operator<=>(Optional const&) const = default;
};

} // clang::mrdocs
Expand Down
2 changes: 1 addition & 1 deletion include/mrdocs/ADT/PolymorphicValue.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ class BadPolymorphicValueConstruction
{
public:
BadPolymorphicValueConstruction() noexcept = default;
const char* what() const noexcept override {
char const* what() const noexcept override {
return "bad polymorphic value construction";
}
};
Expand Down
Loading