[#BloombergLP-baljsn-EncodeImplUtil-validate-0f] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/baljsn.adoc[baljsn]::xref:BloombergLP/baljsn/EncodeImplUtil.adoc[EncodeImplUtil]::validate :relfileprefix: ../../../ :mrdocs: `validate` overloads == Synopses Declared in `<baljsn_encodeimplutil.h>` Determine if the specified `value` having the specified `bdlat` `category` satisfies the requirements for encoding using this component. If the `value` meets the encoding requirements, return 0, otherwise load an unspecified, human‐readable description of the requirements that are not satisfied by the `value` and return a non‐zero value. For values satisfying the `bdlat` `Choice` type‐category concept, the value of the `selectionId` attribute must not be undefined. For values satisfying the requirements of other `bdlat` type‐category concepts, there are no further requirements for encoding using this component. See the package‐level documentation of `bdlat` for an introduction to the requirements of `bdlat` type‐category concepts. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> static int xref:BloombergLP/baljsn/EncodeImplUtil/validate-06.adoc[validate]( std::ostream* logStream, TYPE const& value, xref:BloombergLP/bdlat_TypeCategory/Choice.adoc[bdlat_TypeCategory::Choice] category); ---- [.small]#xref:BloombergLP/baljsn/EncodeImplUtil/validate-06.adoc[_» more..._]# Same as the preceding `validate` overload for the specified `category`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class TYPE, class CATEGORY> static int xref:BloombergLP/baljsn/EncodeImplUtil/validate-0e.adoc[validate]( std::ostream* logStream, TYPE const& value, CATEGORY category); ---- [.small]#xref:BloombergLP/baljsn/EncodeImplUtil/validate-0e.adoc[_» more..._]# [.small]#Created with https://www.mrdocs.com[MrDocs]#