[#BloombergLP-balcl-Constraint]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balcl.adoc[balcl]::Constraint
:relfileprefix: ../../
:mrdocs:

This `struct` provides a namespace that defines the types used to impose user&hyphen;defined constraints on values associated with command&hyphen;line options&period; One type is defined for each scalar type defined in `balcl&colon;&colon;OptionType` except for `bool`&period;

== Synopsis

Declared in `&lt;balcl&lowbar;constraint&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct Constraint;
----

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/balcl/Constraint/CharConstraint.adoc[`CharConstraint`] 
| Functor type that validates `char` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/DateConstraint.adoc[`DateConstraint`] 
| Functor type that validates `bdlt&colon;&colon;Date` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/DatetimeConstraint.adoc[`DatetimeConstraint`] 
| Functor type that validates `bdlt&colon;&colon;Datetime` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/DoubleConstraint.adoc[`DoubleConstraint`] 
| Functor type that validates `double` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/Int64Constraint.adoc[`Int64Constraint`] 
| Functor type that validates `Int64` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/IntConstraint.adoc[`IntConstraint`] 
| Functor type that validates `int` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/StringConstraint.adoc[`StringConstraint`] 
| Functor type that validates `bsl&colon;&colon;string` option values&semi; see `TimeConstraint`&period;
| xref:BloombergLP/balcl/Constraint/TimeConstraint.adoc[`TimeConstraint`] 
| Functor type that validates `bdlt&colon;&colon;Time` option values&period;
|===



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