BloombergLP::bslim::Printer::printForeign

Format data using printFunctionObject, prefixed by name.

Synopsis

Declared in <bslim_printer.h>

template<
    class TYPE,
    class PRINT_FUNCTOR>
void
printForeign(
    TYPE const& data,
    PRINT_FUNCTOR const& printFunctionObject,
    char const* name) const;

Description

Print to the output stream supplied at construction the specified name, if name is not 0, and then call the specified printFunctionObject with the specified data, the stream supplied at construction, absLevel() + 1, and spacesPerLevel(). The parameterized PRINT_FUNCTOR must be an invocable type whose arguments match the following function signature: ` bsl::ostream& (*)(bsl::ostream& stream, const TYPE& data, int level, int spacesPerLevel) `

Parameters

NameDescription
datavalue to format
printFunctionObjectfunctor used to format data
nameattribute name printed before data; omitted if null