regina::StoreValue< T > Class Template Reference
Miscellaneous Utilities

A Property storage policy indicating that the property should be held by value. More...

`#include <utilities/property.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...
void | swap (StoreValue< T > &other)
| Swaps this with the given value. More...

## Protected Attributes

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

## Detailed Description

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

A Property 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 Property 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 Property constructors are used.

See the Property class notes for details.

Python:
  Not present.

## Member Typedef Documentation

## InitType

template<typename T>

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

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

## QueryType

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

## clear()

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.

## swap()

template<typename T>

void regina::StoreValue< T >::swap | ( | StoreValue< T > & | other | ) |

inline

Swaps this with the given value.

Parameters

  other | the value to swap with this.

## Member Data Documentation

## value_

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/property.h

Copyright © 1999-2016, 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@maths.uq.edu.au).