[#BloombergLP-baljsn-EncodeImplUtil_SelectionDispatcher-operator_call-0a] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/baljsn.adoc[baljsn]::xref:BloombergLP/baljsn/EncodeImplUtil_SelectionDispatcher.adoc[EncodeImplUtil_SelectionDispatcher]::operator() :relfileprefix: ../../../ :mrdocs: Encode the JSON representation of the specified `selection`, having the name equal to the `name` attribute of the specified `selectionInfo` to the JSON `formatter` attribute of this object, according to the specified `formattingMode`. If the representation contains no text and `isFirstSubObject` is `true`, load the value `true` into the specified `isNextObjectFirst`, and the value `false` otherwise. If `isFirstSubObject` is `true`, then the representation of the selection contains no leading sequence delimiter, and does contain such a delimiter otherwise. The `options` attribute of this object configures aspects of the JSON representation of the `selection`. If this operation is not successful, load an unspecified, human‐readable description of the error condition to the `logStream` attribute of this object. Return 0 on success, and a non‐zero value otherwise. The behavior is undefined unless the `selection` satisfies both the static and dynamic requirements of the `bdlat` type‐category concept corresponding to the specified `category`. See the component‐level documentation of {`baljsn_encoderoptions`} for a description of the effects, if any, of each option in the `options` on the JSON representation of the `selection`. See the package‐level documentation of {`bdlat`} for an introduction to the requirements of `bdlat` type‐category concepts. == Synopsis Declared in `<baljsn_encodeimplutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> int operator()( TYPE const& selection, xref:BloombergLP/bdlat_TypeCategory/CustomizedType.adoc[bdlat_TypeCategory::CustomizedType] category); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#