[#BloombergLP-bdljsn-Location] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdljsn.adoc[bdljsn]::Location :relfileprefix: ../../ :mrdocs: This unconstrained (value‐semantic) attribute class specifies a location in a (JSON) document. See the for information on the class attributes. Note that the class invariants are identically the constraints on the individual attributes. == Synopsis Declared in `<bdljsn_location.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class Location; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdljsn/Location/2constructor-06.adoc[`Location`] [.small]#[constructor]# | Constructors | xref:BloombergLP/bdljsn/Location/operator_assign.adoc[`operator=`] | Assign to this object the value of the specified `rhs` object. | xref:BloombergLP/bdljsn/Location/offset.adoc[`offset`] | Return the `offset` attribute of this object. | xref:BloombergLP/bdljsn/Location/print.adoc[`print`] | Format this object to the specified output `stream` at the optionally specified indentation `level` and return a reference to the modifiable `stream`. If `level` is specified, optionally specify `spacesPerLevel`, the number of spaces per indentation level for this and all of its nested objects. Each line is indented by the absolute value of `level * spacesPerLevel`. If `level` is negative, suppress indentation of the first line. If `spacesPerLevel` is negative, suppress line breaks and format the entire output on one line. If `stream` is initially invalid, this operation has no effect. Note that a trailing newline is provided in multiline mode only. | xref:BloombergLP/bdljsn/Location/reset.adoc[`reset`] | Reset this object to the default value (i.e., its value upon default construction). | xref:BloombergLP/bdljsn/Location/setOffset.adoc[`setOffset`] | Set the "offset" attribute of this object to the specified `value`. | xref:BloombergLP/bdljsn/Location/swap.adoc[`swap`] | Efficiently exchange the value of this object with the value of the specified `other` object. This method provides the no‐throw exception‐safety guarantee. | xref:BloombergLP/bdljsn/Location/2conversion.adoc[`operator BloombergLP::bslmf::NestedTraitDeclaration<Location, IsBitwiseMoveable>`] | Declare that this type is bitwise moveable. |=== == Friends [cols="1,4"] |=== | Name| Description | `xref:BloombergLP/bdljsn/swap-033.adoc[BloombergLP::bdljsn::swap]` | Exchange the values of the specified `a` and `b` objects. This function provides the no‐throw exception‐safety guarantee. | `xref:BloombergLP/bdljsn/hashAppend-0d.adoc[BloombergLP::bdljsn::hashAppend]` | Pass the specified `object` to the specified `hashAlg`. This function integrates with the `bslh` modular hashing system and effectively provides a `bsl::hash` specialization for `Location`. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdljsn/operator_not_eq-01c7.adoc[`operator!=`] | Return `true` if the specified `lhs` and `rhs` attribute objects do not have the same value, and `false` otherwise. Two attribute objects do not have the same value if one or more respective attributes differ in values. | xref:BloombergLP/bdljsn/operator_eq-07c2.adoc[`operator==`] | Return `true` if the specified `lhs` and `rhs` attribute objects have the same value, and `false` otherwise. Two attribute objects have the same value if each respective attribute has the same value. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#