[#BloombergLP-baljsn-EncodeImplUtil_AttributeVisitor] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/baljsn.adoc[baljsn]::EncodeImplUtil_AttributeVisitor :relfileprefix: ../../ :mrdocs: This component‐private class provides a function object used to encode sequence attributes that satisfy one of the `bdlat` type‐category concepts. == Synopsis Declared in `<baljsn_encodeimplutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class FORMATTER> class EncodeImplUtil_AttributeVisitor; ---- == Description This class's constructor closes over the `formatter`, `logStream`, and `options` parameters that are shared between all encoding operations provided in this component. The function‐call operator of this class provides an overload set that accepts an "attribute" object that satisfies one of the `bdlat` type‐category concepts, and an "attribute info" object that describes various metadata of the attribute. == Type Aliases [cols="1,4"] |=== | Name| Description | xref:BloombergLP/baljsn/EncodeImplUtil_AttributeVisitor/FormattingMode.adoc[`FormattingMode`] | Alias for an `int`‐valued `bdlat_FormattingMode` bit‐field. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/baljsn/EncodeImplUtil_AttributeVisitor/2constructor.adoc[`EncodeImplUtil_AttributeVisitor`] [.small]#[constructor]# | Construct an `EncodeImplUtil_AttributeVisitor` object having the specified `formatter`, `logStream`, `isNextAttributeFirst`, and `options` attributes. | xref:BloombergLP/baljsn/EncodeImplUtil_AttributeVisitor/isNextAttributeFirst.adoc[`isNextAttributeFirst`] | Return the value of the `isNextAttributeFirst` attribute of this object. | xref:BloombergLP/baljsn/EncodeImplUtil_AttributeVisitor/operator_call.adoc[`operator()`] | Encode the JSON representation of `attribute` using `attributeInfo`. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#