Quick Links:

bal | bbl | bdl | bsl

Public Member Functions | Friends

bdljsn::Location Class Reference

#include <bdljsn_location.h>

List of all members.

Public Member Functions

 BSLMF_NESTED_TRAIT_DECLARATION (Location, bslmf::IsBitwiseMoveable)
 Location ()
 Location (bsl::uint64_t offset)
 Location (const Location &original)
 ~Location ()
Locationoperator= (const Location &rhs)
void reset ()
void setOffset (bsl::uint64_t value)
void swap (Location &other)
bsl::uint64_t offset () const
bsl::ostream & print (bsl::ostream &stream, int level=0, int spacesPerLevel=4) const

Friends

template<class HASHALG >
void hashAppend (HASHALG &hashAlg, const Location &)
void swap (Location &, Location &)

Detailed Description

This unconstrained (value-semantic) attribute class specifies a location in a (JSON) document. See the Attributes section under DESCRIPTION in the component-level documentation for information on the class attributes. Note that the class invariants are identically the constraints on the individual attributes.

See Component bdljsn_location


Constructor & Destructor Documentation

bdljsn::Location::Location (  ) 

Create a Location object having the default value, 0.

bdljsn::Location::Location ( bsl::uint64_t  offset  )  [explicit]

Create a Location object having the specified offset.

bdljsn::Location::Location ( const Location original  ) 

Create a Location object having the same value as the specified original object.

bdljsn::Location::~Location (  ) 

Destroy this object.


Member Function Documentation

bdljsn::Location::BSLMF_NESTED_TRAIT_DECLARATION ( Location  ,
bslmf::IsBitwiseMoveable   
)
Location& bdljsn::Location::operator= ( const Location rhs  ) 

Assign to this object the value of the specified rhs object.

void bdljsn::Location::reset (  ) 

Reset this object to the default value (i.e., its value upon default construction).

void bdljsn::Location::setOffset ( bsl::uint64_t  value  ) 

Set the "offset" attribute of this object to the specified value.

void bdljsn::Location::swap ( Location other  ) 

Efficiently exchange the value of this object with the value of the specified other object. This method provides the no-throw exception-safety guarantee.

bsl::uint64_t bdljsn::Location::offset (  )  const

Return the offset attribute of this object.

bsl::ostream& bdljsn::Location::print ( bsl::ostream &  stream,
int  level = 0,
int  spacesPerLevel = 4 
) const

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.


Friends And Related Function Documentation

template<class HASHALG >
void hashAppend ( HASHALG &  hashAlg,
const Location  
) [friend]

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.

void swap ( Location ,
Location  
) [friend]

Exchange the values of the specified a and b objects. This function provides the no-throw exception-safety guarantee.


The documentation for this class was generated from the following file: