![]() |
Header file for the UniqueArray smart pointer class. More...
#include <blaze/util/Assert.h>
#include <blaze/util/constraints/Array.h>
#include <blaze/util/NonCopyable.h>
#include <blaze/util/Null.h>
#include <blaze/util/policies/ArrayDelete.h>
#include <blaze/util/Types.h>
#include <blaze/util/typetraits/RemoveReference.h>
Go to the source code of this file.
Classes | |
class | blaze::UniqueArray< T, D > |
Scope-limited management of dynamically allocated arrays.The UniqueArray class implements a scope-restricted, lightweight smart pointer that manages a dynamically allocated array. In contrast to other smart pointer implementations, UniqueArray is non-copyable and therefore restricted to manage arrays within a single scope, but does so so with a minimum of runtime overhead. The following example demonstrates the application of UniqueArray: More... | |
Namespaces | |
namespace | blaze |
Namespace of the Blaze C++ math library. | |
Functions | |
UniqueArray operators | |
template<typename T1 , typename D1 , typename T2 , typename D2 > | |
bool | blaze::operator== (const UniqueArray< T1, D1 > &lhs, const UniqueArray< T2, D2 > &rhs) |
Equality comparison between two UniqueArray objects. More... | |
template<typename T1 , typename D1 , typename T2 , typename D2 > | |
bool | blaze::operator!= (const UniqueArray< T1, D1 > &lhs, const UniqueArray< T2, D2 > &rhs) |
Inequality comparison between two UniqueArray objects. More... | |
template<typename T1 , typename D1 , typename T2 , typename D2 > | |
bool | blaze::operator< (const UniqueArray< T1, D1 > &lhs, const UniqueArray< T2, D2 > &rhs) |
Less-than comparison between two UniqueArray objects. More... | |
template<typename T1 , typename D1 , typename T2 , typename D2 > | |
bool | blaze::operator<= (const UniqueArray< T1, D1 > &lhs, const UniqueArray< T2, D2 > &rhs) |
Less-or-equal-than comparison between two UniqueArray objects. More... | |
template<typename T1 , typename D1 , typename T2 , typename D2 > | |
bool | blaze::operator> (const UniqueArray< T1, D1 > &lhs, const UniqueArray< T2, D2 > &rhs) |
Greater-than comparison between two UniqueArray objects. More... | |
template<typename T1 , typename D1 , typename T2 , typename D2 > | |
bool | blaze::operator>= (const UniqueArray< T1, D1 > &lhs, const UniqueArray< T2, D2 > &rhs) |
Greater-or-equal-than comparison between two UniqueArray objects. More... | |
template<typename T , typename D > | |
bool | blaze::operator== (const UniqueArray< T, D > &ptr, const Null &null) |
Equality comparison between a UniqueArray and NULL. More... | |
template<typename T , typename D > | |
bool | blaze::operator!= (const UniqueArray< T, D > &ptr, const Null &null) |
Inequality comparison between a UniqueArray and NULL. More... | |
template<typename T , typename D > | |
bool | blaze::operator< (const UniqueArray< T, D > &ptr, const Null &null) |
Less-than comparison between a UniqueArray and NULL. More... | |
template<typename T , typename D > | |
bool | blaze::operator> (const UniqueArray< T, D > &ptr, const Null &null) |
Greater-than comparison between a UniqueArray and NULL. More... | |
template<typename T , typename D > | |
bool | blaze::operator<= (const UniqueArray< T, D > &ptr, const Null &null) |
Less-or-equal-than comparison between a UniqueArray and NULL. More... | |
template<typename T , typename D > | |
bool | blaze::operator>= (const UniqueArray< T, D > &ptr, const Null &null) |
Greater-or-equal-than comparison between a UniqueArray and NULL. More... | |
template<typename T , typename D > | |
bool | blaze::operator== (const Null &null, const UniqueArray< T, D > &ptr) |
Equality comparison between NULL and a UniqueArray. More... | |
template<typename T , typename D > | |
bool | blaze::operator!= (const Null &null, const UniqueArray< T, D > &ptr) |
Inquality comparison between NULL and a UniqueArray. More... | |
template<typename T , typename D > | |
bool | blaze::operator< (const Null &null, const UniqueArray< T, D > &ptr) |
Less-than comparison between NULL and a UniqueArray. More... | |
template<typename T , typename D > | |
bool | blaze::operator> (const Null &null, const UniqueArray< T, D > &ptr) |
Greater-than comparison between NULL and a UniqueArray. More... | |
template<typename T , typename D > | |
bool | blaze::operator<= (const Null &null, const UniqueArray< T, D > &ptr) |
Less-or-equal-than comparison between NULL and a UniqueArray. More... | |
template<typename T , typename D > | |
bool | blaze::operator>= (const Null &null, const UniqueArray< T, D > &ptr) |
Greater-or-equal-than comparison between NULL and a UniqueArray. More... | |
template<typename T , typename D > | |
void | blaze::swap (UniqueArray< T, D > &a, UniqueArray< T, D > &b) |
Swapping the contents of two unique arrays. More... | |
Header file for the UniqueArray smart pointer class.
Copyright (C) 2011 Klaus Iglberger - All Rights Reserved
This file is part of the Blaze library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with a special exception for linking and compiling against the Blaze library, the so-called "runtime exception"; see the file COPYING. If not, see http://www.gnu.org/licenses/.