Add an attribute of the specified name and value to the open element in the specified stream.
Synopsis
Declared in <balxml_formatter_compactimpl.h>
template<class VALUE_TYPE>
static
std::ostream&
addAttribute(
std::ostream& stream,
State* state,
std::string_view const& name,
VALUE_TYPE const& value,
int valueFormattingMode = 0,
EncoderOptions const& encoderOptions = EncoderOptions());
Description
Formatting depends on the specified state, which is updated accordingly. Return the stream. value can be of the following types: char, short, int, bsls::Types::Int64, float, double, bsl::string, bdlt::Datetime, bdlt::Date, and bdlt::Time. Precede this name="value" pair with a single space. Wrap line (write the attribute on next line with proper indentation), if the length of name="value" is too long. Optionally specify a valueFormattingMode and encoderOptions to control the formatting of value. If value is of type bsl::string, it is truncated at any invalid UTF‐8 byte‐sequence or any control character. The list of invalid control characters includes characters in the range [0x00, 0x20)] and 0x7F (DEL) but does not include 0x9, 0xA, and 0x0D. The five special characters: apostrophe, double quote, ampersand, less than, and greater than are escaped in the output XML. If value is of type char, it is cast to a signed byte value with a range [ ‐128 .. 127 ]. The behavior is undefined unless the last manipulator was openElement or addAttribute.
Return Value
a reference to the modifiable stream
Parameters
Name |
Description |
stream |
output stream |
state |
formatter state to consult and update |
name |
attribute name |
value |
attribute value |
valueFormattingMode |
optional formatting mode for |
encoderOptions |
optional encoder options for |
Created with MrDocs