[#BloombergLP-baljsn-EncodeImplUtil_AttributeDispatcher-operator_call-01c]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/baljsn.adoc[baljsn]::xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher.adoc[EncodeImplUtil&lowbar;AttributeDispatcher]::operator()
:relfileprefix: ../../../
:mrdocs:

Function call operators

== Synopses

Declared in `&lt;baljsn&lowbar;encodeimplutil&period;h&gt;`

Encode the JSON representation of `attribute` for the given category&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-03.adoc[operator()](
    xref:bsl/vector-00d.adoc[bsl::vector&lt;char&gt;] const& attribute,
    xref:BloombergLP/bdlat_TypeCategory/Array.adoc[bdlat&lowbar;TypeCategory::Array] category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-03.adoc[_» more&period;&period;&period;_]#

Same as the primary `operator()` overload for the specified `category`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0c.adoc[operator()](
    TYPE const& attribute,
    xref:BloombergLP/bdlat_TypeCategory/Array.adoc[bdlat&lowbar;TypeCategory::Array] category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0c.adoc[_» more&period;&period;&period;_]#

Same as the primary `operator()` overload for the specified `category`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0187.adoc[operator()](
    TYPE const& attribute,
    xref:BloombergLP/bdlat_TypeCategory/CustomizedType.adoc[bdlat&lowbar;TypeCategory::CustomizedType] category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0187.adoc[_» more&period;&period;&period;_]#

Same as the primary `operator()` overload for the specified `category`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0eb.adoc[operator()](
    TYPE const& attribute,
    xref:BloombergLP/bdlat_TypeCategory/DynamicType.adoc[bdlat&lowbar;TypeCategory::DynamicType] category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0eb.adoc[_» more&period;&period;&period;_]#

The behavior of this function is undefined&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-018b.adoc[operator()](
    TYPE const& attribute,
    xref:BloombergLP/bslmf/Nil.adoc[bslmf::Nil] category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-018b.adoc[_» more&period;&period;&period;_]#

Same as the primary `operator()` overload for the specified `category`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TYPE&gt;
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0e7.adoc[operator()](
    TYPE const& attribute,
    xref:BloombergLP/bdlat_TypeCategory/NullableValue.adoc[bdlat&lowbar;TypeCategory::NullableValue] category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0e7.adoc[_» more&period;&period;&period;_]#

Same as the primary `operator()` overload for the specified `category`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class TYPE,
    class CATEGORY&gt;
int
xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0e3.adoc[operator()](
    TYPE const& attribute,
    CATEGORY category);
----

[.small]#xref:BloombergLP/baljsn/EncodeImplUtil_AttributeDispatcher/operator_call-0e3.adoc[_» more&period;&period;&period;_]#

== Return Value

* 0 on success, and a non&hyphen;zero value otherwise
* an unspecified value

== Parameters

[cols="1,4"]
|===
| Name| Description
| *attribute*
| sequence attribute to encode
| *category*
| `bdlat` Array type&hyphen;category tag
|===


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