[#BloombergLP-baltzo-ZoneinfoBinaryHeader]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/baltzo.adoc[baltzo]::ZoneinfoBinaryHeader
:relfileprefix: ../../
:mrdocs:

This simply constrained (value&hyphen;semantic) attribute class represents a Zoneinfo binary&hyphen;file header&period;

== Synopsis

Declared in `&lt;baltzo&lowbar;zoneinfobinaryheader&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class ZoneinfoBinaryHeader;
----

== Description

This class represents the header information found at the start of a Zoneinfo (binary) database file, which describes the contents of the file&period;

See the  section for information on the class attributes&period; Note that the class invariants are identically the constraints on the individual attributes&period;

This class&colon; &ast; supports a complete set of _value_ _semantic_ operations

* except for `bdex` serialization &ast; is _exception&hyphen;neutral_ &ast; is _alias&hyphen;safe_ &ast; is `const` _thread&hyphen;safe_ For terminology see `bsldoc&lowbar;glossary`&period;

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/2constructor-06.adoc[`ZoneinfoBinaryHeader`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/2destructor.adoc[`&#126;ZoneinfoBinaryHeader`] [.small]#[destructor]#
| Destroy this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/operator_assign.adoc[`operator&equals;`] 
| Assign to this object the value of the specified `rhs` object, and return a reference providing modifiable access to this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/abbrevDataSize.adoc[`abbrevDataSize`] 
| Return the value of the `abbrevDataSize` attribute of this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/numIsGmt.adoc[`numIsGmt`] 
| Return the value of the `numIsGmt` attribute of this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/numIsStd.adoc[`numIsStd`] 
| Return the value of the `numIsStd` attribute of this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/numLeaps.adoc[`numLeaps`] 
| Return the value of the `numLeaps` attribute of this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/numLocalTimeTypes.adoc[`numLocalTimeTypes`] 
| Return the value of the `numLocalTimeTypes` attribute of this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/numTransitions.adoc[`numTransitions`] 
| Return the value of the `numTransitions` attribute of this object&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/print.adoc[`print`] 
| Write the value of this object to the specified output `stream`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setAbbrevDataSize.adoc[`setAbbrevDataSize`] 
| Set the `abbrevDataSize` attribute of this object to the specified `value`&period; The behavior is undefined unless `1 &lt;&equals; value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setNumIsGmt.adoc[`setNumIsGmt`] 
| Set the `numIsGmt` attribute of this object to the specified `value`&period; The behavior is undefined unless `0 &lt;&equals; value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setNumIsStd.adoc[`setNumIsStd`] 
| Set the `numIsStd` attribute of this object to the specified `value`&period; The behavior is undefined unless `0 &lt;&equals; value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setNumLeaps.adoc[`setNumLeaps`] 
| Set the `numLeaps` attribute of this object to the specified `value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setNumLocalTimeTypes.adoc[`setNumLocalTimeTypes`] 
| Set the `numLocalTimeTypes` attribute of this object to the specified `value`&period; The behavior is undefined unless `1 &lt;&equals; value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setNumTransitions.adoc[`setNumTransitions`] 
| Set the `numTransitions` attribute of this object to the specified `value`&period; The behavior is undefined unless `0 &lt;&equals; value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/setVersion.adoc[`setVersion`] 
| Set the `version` attribute of this object to the specified `value`&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/swap.adoc[`swap`] 
| Efficiently exchange the value of this object with the value of the specified `other` object&period; This method provides the no&hyphen;throw exception&hyphen;safety guarantee&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/version.adoc[`version`] 
| Return the value of the `version` attribute of this object&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidAbbrevDataSize.adoc[`isValidAbbrevDataSize`] 
| Return `true` if the specified `value` is greater than or equal to 1, and `false` otherwise&apos;&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidNumIsGmt.adoc[`isValidNumIsGmt`] 
| Return `true` if the specified `value` is greater than or equal to 0, and `false` otherwise&apos;&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidNumIsStd.adoc[`isValidNumIsStd`] 
| Return `true` if the specified `value` is greater than or equal to 0, and `false` otherwise&apos;&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidNumLeaps.adoc[`isValidNumLeaps`] 
| Return `true` if the specified `value` is greater than or equal to 0, and `false` otherwise&apos;&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidNumLocalTimeTypes.adoc[`isValidNumLocalTimeTypes`] 
| Return `true` if the specified `value` is greater than or equal to 1, and `false` otherwise&apos;&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidNumTransitions.adoc[`isValidNumTransitions`] 
| Return `true` if the specified `value` is greater than or equal to 0, and `false` otherwise&apos;&period;
| xref:BloombergLP/baltzo/ZoneinfoBinaryHeader/isValidVersion.adoc[`isValidVersion`] 
| Return `true` if the specified value equals &apos;0&apos;, `2`, `3` or `4`, and `false` otherwise&period;
|===


== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/baltzo/operator_not_eq-04c.adoc[`operator!&equals;`]
| Return `true` if the specified `lhs` and `rhs` objects do not have the same value, and `false` otherwise&period;
| xref:BloombergLP/baltzo/operator_eq-0b.adoc[`operator&equals;&equals;`]
| Return `true` if the specified `lhs` and `rhs` objects have the same value, and `false` otherwise&period;
| xref:BloombergLP/baltzo/swap-0a.adoc[`swap`]
| Efficiently exchange the values of the specified `a` and `b` objects&period; This function provides the no&hyphen;throw exception&hyphen;safety guarantee&period;
|===


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