[#BloombergLP-bdljsn-Json_VisitUtil-invokeVisitor-060] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdljsn.adoc[bdljsn]::xref:BloombergLP/bdljsn/Json_VisitUtil.adoc[Json_VisitUtil]::invokeVisitor :relfileprefix: ../../../ :mrdocs: `invokeVisitor` overloads == Synopses Declared in `<bdljsn_json.h>` Same as the related overload above for `invokeVisitor`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class VISITOR, class ARGUMENT> static decltype(auto) xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-04.adoc[invokeVisitor]( xref:BloombergLP/bslmf/MovableRef_Deduced.adoc[BloombergLP::bslmf::MovableRef_Deduced<VISITOR>] visitor, ARGUMENT const& argument); ---- [.small]#xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-04.adoc[_» more..._]# Same as the overload taking a `const VISITOR&`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class VISITOR, class ARGUMENT> static decltype(auto) xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-05.adoc[invokeVisitor]( VISITOR const& visitor, ARGUMENT const& argument); ---- [.small]#xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-05.adoc[_» more..._]# Same as the related overload above for `invokeVisitor`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class RETURN_TYPE, class VISITOR, class ARGUMENT> static RETURN_TYPE xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-063.adoc[invokeVisitor]( xref:BloombergLP/bslmf/MovableRef_Deduced.adoc[BloombergLP::bslmf::MovableRef_Deduced<VISITOR>] visitor, ARGUMENT const& argument); ---- [.small]#xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-063.adoc[_» more..._]# Same as the overload taking a `VISITOR` pointer. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class RETURN_TYPE, class VISITOR, class ARGUMENT> static RETURN_TYPE xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-0d.adoc[invokeVisitor]( VISITOR& visitor, ARGUMENT const& argument); ---- [.small]#xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-0d.adoc[_» more..._]# Same as the overload taking a `VISITOR` pointer. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class RETURN_TYPE, class VISITOR, class ARGUMENT> static RETURN_TYPE xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-09.adoc[invokeVisitor]( VISITOR const& visitor, ARGUMENT const& argument); ---- [.small]#xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-09.adoc[_» more..._]# Invoke the specified `visitor` (callable object) with the specified `argument` and return the computed value of (template parameter) the `RETURN_TYPE`. Note that in typical use, `argument` has the current value and type of a `Json` object. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class RETURN_TYPE, class VISITOR, class ARGUMENT> static RETURN_TYPE xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-02.adoc[invokeVisitor]( VISITOR* visitor, ARGUMENT const& argument); ---- [.small]#xref:BloombergLP/bdljsn/Json_VisitUtil/invokeVisitor-02.adoc[_» more..._]# [.small]#Created with https://www.mrdocs.com[MrDocs]#