[#BloombergLP-bdljsn-Tokenizer-setConformanceMode]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdljsn.adoc[bdljsn]::xref:BloombergLP/bdljsn/Tokenizer.adoc[Tokenizer]::setConformanceMode
:relfileprefix: ../../../
:mrdocs:

Set the `conformanceMode` of this tokenizer to the specified `mode`&period;

== Synopsis

Declared in `&lt;bdljsn&lowbar;tokenizer&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bdljsn/Tokenizer.adoc[Tokenizer]&
setConformanceMode(xref:BloombergLP/bdljsn/Tokenizer/ConformanceMode-03.adoc[ConformanceMode] mode);
----

== Description

Return a non&hyphen;`const` reference to this tokenizer&period; If `mode` is `e&lowbar;STRICT&lowbar;20240119` the option values of this tokenizer are set to be fully compliant with RFC8259 (see https&colon;&sol;&sol;www&period;rfc&hyphen;editor&period;org&sol;rfc&sol;rfc8259)

Specifically, those option values are&colon; &grave; allowConsecutiveSeparators() &equals;&equals; false&semi; allowFormFeedAsWhitespace() &equals;&equals; false&semi; allowHeterogeneousArrays() &equals;&equals; true&semi; allowNonUtf8StringLiterals() &equals;&equals; false&semi; allowStandAloneValues() &equals;&equals; true&semi; allowTrailingTopLevelComma() &equals;&equals; false&semi; allowUnescapedControlCharacters() &equals; false&semi; &grave; Otherwise (i&period;e&period;, `mode` is `e&lowbar;RELAXED`), those option values can be set in any combination&period; Note that the behavior is undefined if individual options are set when `conformanceMode` is _not_ `e&lowbar;RELAXED`&period;

== Return Value

a non&hyphen;`const` reference to this tokenizer

== Parameters

[cols="1,4"]
|===
| Name| Description
| *mode*
| new conformance mode for this tokenizer
|===


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