welder 0.1.0
Bindings for annotated C++ types, from C++26 reflection
Loading...
Searching...
No Matches
welder::rods::python::detail Namespace Reference

Functions

constexpr void append_indented (std::string &out, const char *text, std::string_view indent)
 Append text to out, indenting every continuation line by indent so a multiline param/returns doc stays visually under its block (docs often carry examples spanning lines).
constexpr void blank_line (std::string &out)
 Separate a new block from preceding content in out by exactly one blank line, whether or not that content already ended in a newline (a summary does not; a section body typically does).
constexpr bool any_param_doc (const ::welder::detail::function_doc &d)
 Whether d has at least one documented parameter (so a params block is worth opening).

Function Documentation

◆ any_param_doc()

bool welder::rods::python::detail::any_param_doc ( const ::welder::detail::function_doc & d)
constexpr

Whether d has at least one documented parameter (so a params block is worth opening).

An undocumented parameter contributes nothing to any style.

Definition at line 70 of file doc_style.hpp.

Referenced by welder::rods::python::google_style::format(), welder::rods::python::numpy_style::format(), and welder::rods::python::sphinx_style::format().

◆ append_indented()

void welder::rods::python::detail::append_indented ( std::string & out,
const char * text,
std::string_view indent )
constexpr

Append text to out, indenting every continuation line by indent so a multiline param/returns doc stays visually under its block (docs often carry examples spanning lines).

A trailing newline gets no indent, so no dangling whitespace line is left. Shared by all three Python styles.

Definition at line 48 of file doc_style.hpp.

Referenced by welder::rods::python::google_style::format(), welder::rods::python::numpy_style::format(), welder::rods::python::sphinx_style::format(), welder::rods::python::google_style::format_enum(), welder::rods::python::numpy_style::format_enum(), and welder::rods::python::sphinx_style::format_enum().

◆ blank_line()

void welder::rods::python::detail::blank_line ( std::string & out)
constexpr

Separate a new block from preceding content in out by exactly one blank line, whether or not that content already ended in a newline (a summary does not; a section body typically does).

A no-op when out is still empty.

Definition at line 60 of file doc_style.hpp.

Referenced by welder::rods::python::google_style::format(), welder::rods::python::numpy_style::format(), welder::rods::python::sphinx_style::format(), welder::rods::python::google_style::format_enum(), welder::rods::python::numpy_style::format_enum(), and welder::rods::python::sphinx_style::format_enum().