Ddpi_Format specifiers
The libddpi design recognizes that output data
will include the names and values of variables, types and functions. The Ddpi_Format specifiers
handle this type of information.
For example:
- The
%<NV>specifier indicates that a variable name should be sent to output. - The
%<I>specifier indicates that an indentation should be added, based on the nested position of the given data.
ddpi_formatter operation
specifies %<Nd> , the function will return both the tag
name and the variable name of the given composite variable. Specifiers that identify output data
- %<NT>
%<NT>causes the function to return the type of the variable.- %<NV>
%<NV>causes the function to return the name of the variable.- %<Nd>
%<Nd>causes the function to return both the type and name of the variable.- %<ND>
%<ND>behaves the same as%<Nd>, except that the composite types are expanded. For example, if a structure is used, then the function will also return the type and name of the members.- %<V>
%<V>causes the function to return the value of the variable.
Specifiers that format output data
- %<Ix>
- Causes the function to create an indentation, where
xis the depth in the current nested level of a composite type. For example,%<I3>will cause an indentation of three spaces per level. For a member of a structure inside a structure, the indentation would be six spaces. - %<S>
- Causes the function to print a string that is enclosed in double quotes, and replace non-printable characters with dots.
- %<C>
- Causes the function to print a character enclosed in single quotes. It
replaces control characters, based on the input character set (EBCDIC or ASCII),
as shown in Table 1.
It replaces other non-printing characters with dots.
Table 1. Control character replacements for ASCII and EBCDIC EBCDIC input character ASCII input character Replacement string \x15 \xa \n \x5 \x9 \t \xb \xb \v \x16 \x8 \b \xd \xd \r \xc \xc \f \x2f \x7 \a - user defined
- The format specifier also accepts the general syntax
%<fmt_name>, wherefmt_nameis a symbolic name representing a format string.fmt_namemust be defined by a previous call to theddpi_format_set_type_formatoperation. Substitution is done recursively until all items with the%<...>syntax are replaced.