[#BloombergLP-balxml-Encoder_EncodeObject]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balxml.adoc[balxml]::Encoder&lowbar;EncodeObject
:relfileprefix: ../../
:mrdocs:

Component&hyphen;private class&period; Do not use&period;

== Synopsis

Declared in `&lt;balxml&lowbar;encoder&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class Encoder&lowbar;EncodeObject;
----

== Description

This struct encodes an object _with_ enclosing tags&period; Compared to the `EncoderUtil&lowbar;EncodeValue` class below, this class prefixes the value with an opening tag, and suffixes the value with a closing tag&period; In pseudocode, this is equivalent to&colon; &grave; openTag() Encoder&lowbar;EncodeValue() closeTag() &grave; There is an overloaded version of `bsl&colon;&colon;vector&lt;char&gt;` because, based on the formatting mode, this class needs to switch between encoding the value in a single tag (i&period;e&period;, when using BASE64, TEXT, IS&lowbar;LIST or HEX) and encoding the value in multiple tags (i&period;e&period;, when repetition is used)&period;

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balxml/Encoder_EncodeObject/2constructor.adoc[`Encoder&lowbar;EncodeObject`]         [.small]#[constructor]#
| Create an object encoder bound to the specified `context`&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject/execute.adoc[`execute`] 
| Encode the specified `object` with the specified `tag`, `formattingMode`, and `isMultiple` flag&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject/executeArrayListImp.adoc[`executeArrayListImp`] 
| Encode the specified array `object` as a list using the specified `tag`&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject/executeArrayRepetitionImp.adoc[`executeArrayRepetitionImp`] 
| Encode the specified array `object` as repeated elements using the specified `tag` and `formattingMode`&period;
| xref:BloombergLP/balxml/Encoder_EncodeObject/executeImp-08.adoc[`executeImp`] 
| `executeImp` overloads
| xref:BloombergLP/balxml/Encoder_EncodeObject/operator_call.adoc[`operator()`] 
| Encode the specified `object` using metadata from the specified `info`&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
