Description
I think it would be great if standard library documentation included lists of modules present in a namespace. For example, the documentation of the C++ ControlFlowGraph
module is available here:
This is easily discoverable if someone knows what to search for, but I couldn't find a good way to find out what other modules are there in the semmle.code.cpp.controlflow
namespace (the https://codeql.github.com/codeql-standard-libraries/cpp/semmle/code/cpp/controlflow/ URL is 404). Having such a list in the documentation would be useful to find the best fit for the control-flow problem at hand in this case. For example when browsing the source code and reading the comments of each .qll file in the appropriate directory one can discover the BasicBlocks
module stating:
"Provides a library for reasoning about control flow at the granularity of basic blocks. This is usually much more efficient than reasoning directly at the level of
ControlFlowNode
s."
My suggestion is to generate documentation from these comments too and generate index files in each namespace directory that list all contained modules and namespaces.
I'd be happy to work on a PR but I'll need some guidance about how API documentation for the standard library is generated (I could only find this guide that doesn't seem to cover the standard library API).