regina::StoreValue< T > Class Template Reference
Utilities

An NProperty storage policy indicating that the property should be held by value. More...

`#include <utilities/nproperty.h>`

## Public Types

typedef const T & | InitType
| The type by which new values for the underlying property are passed. More...
typedef const T & | QueryType
| The type by which the property value is returned to the user. More...

## Public Member Functions

void | clear ()
| Cleans up any currently held value before the property value is changed or cleared. More...

## Protected Attributes

T | value_
| The held property value. More...

## Detailed Description

### template<typename T>
class regina::StoreValue< T >

An NProperty storage policy indicating that the property should be held by value.

That is, upon assignment or initialisation the underlying value will be copied into the NProperty wrapper.

The property type T must have a copy assignment operator, and it must also have either a copy constructor and/or a default constructor according to which NProperty constructors are used.

See the NProperty class notes for details.

Python:
  Not present.

## Member Typedef Documentation

template<typename T>

typedef const T& regina::StoreValue< T >::InitType

The type by which new values for the underlying property are passed.

template<typename T>

typedef const T& regina::StoreValue< T >::QueryType

The type by which the property value is returned to the user.

## Member Function Documentation

template<typename T>

void regina::StoreValue< T >::clear | ( |  | ) |

inline

Cleans up any currently held value before the property value is changed or cleared.

This implementation does nothing.

## Member Data Documentation

template<typename T>

T regina::StoreValue< T >::value_

protected

The held property value.

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

- utilities/nproperty.h

Copyright © 1999-2013, The Regina development team
This software is released under the GNU General Public License, with some additional permissions; see the source code for details.
For further information, or to submit a bug or other problem, please contact Ben Burton (bab@debian.org).