HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_OptionsRef Class Reference

#include <UT_Options.h>

+ Inheritance diagram for UT_OptionsRef:

Public Types

typedef UT_Options value_type
 

Public Member Functions

SYS_FORCE_INLINE UT_OptionsRef ()
 
SYS_FORCE_INLINE UT_OptionsRef (const UT_Options *opt)
 Will make a shallow reference. More...
 
SYS_FORCE_INLINE UT_OptionsRef (const UT_OptionsRef &s)
 Shares a reference with the source. More...
 
SYS_FORCE_INLINE UT_OptionsRef (UT_OptionsRef &&s) noexcept
 Move constructor. Steals the working data from the original. More...
 
SYS_FORCE_INLINE ~UT_OptionsRef ()
 
bool isUnique () const
 Returns true this object is the sole owner of the underlying options. More...
 
int use_count () const
 
UT_OptionsRefoperator= (const UT_OptionsRef &s)
 Shares a reference with the source. More...
 
SYS_FORCE_INLINE UT_OptionsRefoperator= (UT_OptionsRef &&s)
 
SYS_FORCE_INLINE const UT_OptionsoptionsOrNull () const
 
SYS_FORCE_INLINE const UT_Optionsoptions () const
 
bool operator== (const UT_OptionsRef &s) const
 
bool operator== (const UT_Options *b) const
 
bool operator!= (const UT_OptionsRef &s) const
 
bool operator!= (const UT_Options *s) const
 
SYS_FORCE_INLINE const UT_Optionsoperator-> () const
 
SYS_FORCE_INLINE const UT_Optionsoperator* () const
 
SYS_FORCE_INLINE void swap (UT_OptionsRef &other)
 
SYS_FORCE_INLINE void clear ()
 
bool isEmpty () const
 
 operator bool () const
 
unsigned hash () const
 
void reference (const UT_Options *src)
 
int64 getMemoryUsage (bool inclusive) const
 

Static Public Member Functions

static const UT_OptionsemptyOptions ()
 

Friends

class UT_OptionsHolder
 
void swap (UT_OptionsRef &a, UT_OptionsRef &b)
 Friend specialization of std::swap() to use UT_OptionsRef::swap() More...
 
enum  UT_OptionsSentinelType { SENTINEL }
 
SYS_FORCE_INLINE UT_OptionsRef (UT_OptionsSentinelType)
 
SYS_FORCE_INLINE bool isSentinel () const
 
SYS_FORCE_INLINE void makeSentinel ()
 

Detailed Description

A holder for a options, which caches the hash value. A UT_OptionsRef does not necessarily own the options, and it is therefore not safe to e.g. store a UT_OptionsRef in a container or member variable.

See Also
UT_OptionsHolder

Definition at line 676 of file UT_Options.h.

Member Typedef Documentation

Definition at line 679 of file UT_Options.h.

Member Enumeration Documentation

Special sentinel value support

Enumerator
SENTINEL 

Definition at line 721 of file UT_Options.h.

Constructor & Destructor Documentation

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( )
inline

Definition at line 682 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( const UT_Options opt)
inline

Will make a shallow reference.

Definition at line 689 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( const UT_OptionsRef s)
inline

Shares a reference with the source.

Definition at line 697 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( UT_OptionsRef &&  s)
inlinenoexcept

Move constructor. Steals the working data from the original.

Definition at line 706 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::~UT_OptionsRef ( )
inline

Definition at line 715 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef::UT_OptionsRef ( UT_OptionsSentinelType  )
inlineexplicit

Special sentinel value support

Definition at line 724 of file UT_Options.h.

Member Function Documentation

SYS_FORCE_INLINE void UT_OptionsRef::clear ( void  )
inline

Definition at line 871 of file UT_Options.h.

static const UT_Options& UT_OptionsRef::emptyOptions ( )
inlinestatic

Definition at line 925 of file UT_Options.h.

int64 UT_OptionsRef::getMemoryUsage ( bool  inclusive) const
inline

Definition at line 915 of file UT_Options.h.

unsigned UT_OptionsRef::hash ( void  ) const
inline

Definition at line 890 of file UT_Options.h.

bool UT_OptionsRef::isEmpty ( ) const
inline

Definition at line 876 of file UT_Options.h.

SYS_FORCE_INLINE bool UT_OptionsRef::isSentinel ( ) const
inline

Special sentinel value support

Definition at line 731 of file UT_Options.h.

bool UT_OptionsRef::isUnique ( ) const
inline

Returns true this object is the sole owner of the underlying options.

Definition at line 746 of file UT_Options.h.

SYS_FORCE_INLINE void UT_OptionsRef::makeSentinel ( )
inline

Special sentinel value support

Definition at line 737 of file UT_Options.h.

UT_OptionsRef::operator bool ( ) const
inlineexplicit

Definition at line 888 of file UT_Options.h.

bool UT_OptionsRef::operator!= ( const UT_OptionsRef s) const
inline

Definition at line 851 of file UT_Options.h.

bool UT_OptionsRef::operator!= ( const UT_Options s) const
inline

Definition at line 853 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options& UT_OptionsRef::operator* ( ) const
inline

Definition at line 857 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options* UT_OptionsRef::operator-> ( ) const
inline

Definition at line 856 of file UT_Options.h.

UT_OptionsRef& UT_OptionsRef::operator= ( const UT_OptionsRef s)
inline

Shares a reference with the source.

Definition at line 770 of file UT_Options.h.

SYS_FORCE_INLINE UT_OptionsRef& UT_OptionsRef::operator= ( UT_OptionsRef &&  s)
inline

Move the contents of about-to-be-destructed options s to this string.

Definition at line 782 of file UT_Options.h.

bool UT_OptionsRef::operator== ( const UT_OptionsRef s) const
inline

Definition at line 806 of file UT_Options.h.

bool UT_OptionsRef::operator== ( const UT_Options b) const
inline

Definition at line 832 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options* UT_OptionsRef::options ( ) const
inline

Definition at line 798 of file UT_Options.h.

SYS_FORCE_INLINE const UT_Options* UT_OptionsRef::optionsOrNull ( ) const
inline

Definition at line 790 of file UT_Options.h.

void UT_OptionsRef::reference ( const UT_Options src)
inline

Make a light weight reference to the source. Caller must make sure src lives for the duration of this object, and any objects value copied from this!

Definition at line 909 of file UT_Options.h.

SYS_FORCE_INLINE void UT_OptionsRef::swap ( UT_OptionsRef other)
inline

Definition at line 860 of file UT_Options.h.

int UT_OptionsRef::use_count ( ) const
inline

Returns the shared ptr use count. 0 if not a shared pointer. (null or soft ref)

Definition at line 760 of file UT_Options.h.

Friends And Related Function Documentation

void swap ( UT_OptionsRef a,
UT_OptionsRef b 
)
friend

Friend specialization of std::swap() to use UT_OptionsRef::swap()

Definition at line 868 of file UT_Options.h.

friend class UT_OptionsHolder
friend

Definition at line 963 of file UT_Options.h.


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