[#BloombergLP-balcl-TypeInfoUtil] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balcl.adoc[balcl]::TypeInfoUtil :relfileprefix: ../../ :mrdocs: This utility `struct` provides a namespace for functions that perform non‐primitive operations using `TypeInfo` objects. == Synopsis Declared in `<balcl_typeinfo.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- struct TypeInfoUtil; ---- == Static Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/balcl/TypeInfoUtil/parseAndValidate.adoc[`parseAndValidate`] | Load into the specified `element` the result of parsing the specified `input` as a value of the `element‐>type()`. Return `true` if `input` is parsed without error and the value satisfies the constraint of the specified `typeInfo` object (if any), and `false` with no effect on `element` otherwise. If the operation fails, a descriptive error message indicating the reason for the failure is written to the specified `stream. If `typeInfo' holds no constraint that validation is considered `true`; nevertheless, the parse might still fail due to problems with the input format. Optionally specify `inputSource` indicating the source of the option text being parsed. If `inputSource` is not provided, `input` is treated as if it came from the command line. `inputSource` is used in handling boolean options. Boolean options supplied by command line should not have associated text, where as boolean options supplied by the environment should have the values "0", "1", "true", or "false". The behavior is undefined unless `element‐>type() == typeInfo.type()`. | xref:BloombergLP/balcl/TypeInfoUtil/satisfiesConstraint-04.adoc[`satisfiesConstraint`] | `satisfiesConstraint` overloads | xref:BloombergLP/balcl/TypeInfoUtil/tokenizeArrayEnvironmentVariable.adoc[`tokenizeArrayEnvironmentVariable`] | Load the specified `tokens` with the specified `input` broken up into substrings separated by ` `, except that characters following '' are not to be interpreted as separators. It is an error for `input` to contain a '' that is not followed by another '' or ` `. Return 0 on success, and a negative value on failure. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#