Skip to content

Commit 7c96108

Browse files
committed
fix: complete Namespace.hpp
1 parent d2ccbe8 commit 7c96108

File tree

1 file changed

+7
-34
lines changed

1 file changed

+7
-34
lines changed

include/mrdocs/Metadata/Symbol/Namespace.hpp

Lines changed: 7 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -106,24 +106,6 @@ allMembers(NamespaceTranche const& T)
106106
}
107107
}
108108
) | std::ranges::views::join;
109-
110-
#if 0
111-
using Members = boost::describe::describe_members<
112-
NamespaceTranche, boost::describe::mod_any_access>;
113-
constexpr std::size_t N = boost::mp11::mp_size<Members>::value;
114-
115-
// Build an array of ref_views over each member vector
116-
std::array arr = [&]<std::size_t... I>(std::index_sequence<I...>) {
117-
return std::array{
118-
std::ranges::ref_view{T.*boost::mp11::mp_at_c<Members, I>::pointer}...
119-
};
120-
}(std::make_index_sequence<N>{});
121-
122-
// Now flatten lazily: iota -> transform -> join
123-
return std::views::iota(std::size_t{0}, N)
124-
| std::views::transform([&arr](std::size_t i) -> auto& { return arr[i]; })
125-
| std::views::join;
126-
#endif
127109
}
128110

129111
/** Map a NamespaceTranche to a dom::Object.
@@ -141,18 +123,6 @@ tag_invoke(
141123
DomCorpus const* domCorpus)
142124
{
143125
mapWithDescribe(io, I, domCorpus);
144-
/*
145-
io.map("namespaces", dom::LazyArray(I.Namespaces, domCorpus));
146-
io.map("namespaceAliases", dom::LazyArray(I.NamespaceAliases, domCorpus));
147-
io.map("typedefs", dom::LazyArray(I.Typedefs, domCorpus));
148-
io.map("records", dom::LazyArray(I.Records, domCorpus));
149-
io.map("enums", dom::LazyArray(I.Enums, domCorpus));
150-
io.map("functions", dom::LazyArray(I.Functions, domCorpus));
151-
io.map("variables", dom::LazyArray(I.Variables, domCorpus));
152-
io.map("concepts", dom::LazyArray(I.Concepts, domCorpus));
153-
io.map("guides", dom::LazyArray(I.Guides, domCorpus));
154-
io.map("usings", dom::LazyArray(I.Usings, domCorpus));
155-
*/
156126
}
157127

158128
/** Map the NamespaceTranche to a @ref dom::Value object.
@@ -202,6 +172,12 @@ struct NamespaceSymbol final
202172
operator<=>(NamespaceSymbol const&) const;
203173
};
204174

175+
BOOST_DESCRIBE_STRUCT(
176+
NamespaceSymbol,
177+
(SymbolCommonBase<SymbolKind::Namespace>),
178+
(IsInline, IsAnonymous, UsingDirectives, Members)
179+
)
180+
205181
/** Merge two namespaces, keeping existing members stable.
206182
*/
207183
MRDOCS_DECL
@@ -234,10 +210,7 @@ tag_invoke(
234210
DomCorpus const* domCorpus)
235211
{
236212
tag_invoke(t, io, I.asInfo(), domCorpus);
237-
io.map("isInline", I.IsInline);
238-
io.map("isAnonymous", I.IsAnonymous);
239-
io.map("members", I.Members);
240-
io.map("usingDirectives", dom::LazyArray(I.UsingDirectives, domCorpus));
213+
mapWithDescribe(io, I, domCorpus);
241214
}
242215

243216
/** Map the NamespaceSymbol to a @ref dom::Value object.

0 commit comments

Comments
 (0)