dlrCommon/functional.h File Reference

Header file declaring functors which are not part of the C++ standard library. More...

#include <algorithm>
#include <functional>
#include <utility>
#include <dlrCommon/types.h>

Include dependency graph for dlrCommon/functional.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  dlr
namespace  dlr::common

Classes

class  dlr::common::BinaryComposeFunctor< Functor0, Functor1, Functor2 >
 Functor template for composing one binary function, functor0(x, y), and two unary functions functor1(x) and functor2(x) so that the result is functor0(functor1(x), functor2(y)). More...
class  dlr::common::ComposeFunctor_1_2< Functor0, Functor1 >
 Functor template for composing one unary function, functor0(x) and one binary function functor1(x, y) so that the result is functor0(functor1(x, y)). More...
class  dlr::common::ExtractFirstFunctor< Type0, Type1 >
 Functor template for extracting the first element of a std::pair. More...
class  dlr::common::ExtractSecondFunctor< Type0, Type1 >
 Functor template for extracting the second element of a std::pair. More...
class  dlr::common::ApproximatelyEqualFunctor< Type >
 Functor template for comparing two values to determine equivalence within a specified precision. More...
class  dlr::common::PointerToBinaryFunctionRA< ArgumentType0, ArgumentType1, ResultType >
 Functor template much like std::pointer_to_binary_function, but specifically for functions which take const reference arguments. More...
struct  dlr::common::StaticCastFunctor< TypeIn, TypeOut >
 Functor template which uses static_cast to convert instances of one type into instances of another. More...
class  dlr::common::UnaryComposeFunctor< Functor0, Functor1 >
 Functor template for composing two unary functions functor0(x) and functor1(x) so that the result is functor0(functor1(x)). More...

Functions

template<class Type>
bool dlr::common::approximatelyEqual (const Type &argument0, const Type &argument1, const Type &epsilon)
 This convenience function constructs an ApproximatelyEqualFunctor<Type> functor and applies it two the first two arguments.
template<class Functor0, class Functor1, class Functor2>
BinaryComposeFunctor< Functor0,
Functor1, Functor2 > 
dlr::common::binaryComposeFunctor (const Functor0 &functor0, const Functor1 &functor1, const Functor2 &functor2)
 This is a convenience function which makes it easy to create BinaryComposeFunctor instances.
template<class Type>
Type dlr::common::clip (Type value, Type lowerBound, Type upperBound)
 This convenience function clips its first argument to lie within the closed range defined by it's remaining arguments.
template<class Functor0, class Functor1>
ComposeFunctor_1_2< Functor0,
Functor1 > 
dlr::common::composeFunctor_1_2 (const Functor0 &functor0, const Functor1 &functor1)
 This is a convenience function which makes it easy to create ComposeFunctor_1_2 instances.
template<class Functor0, class Functor1>
UnaryComposeFunctor< Functor0,
Functor1 > 
dlr::common::unaryComposeFunctor (const Functor0 &functor0, const Functor1 &functor1)
 This is a convenience function which makes it easy to create UnaryComposeFunctor instances.


Detailed Description

Header file declaring functors which are not part of the C++ standard library.

Copyright (C) 2003-2007, David LaRose, dlr@cs.cmu.edu See accompanying file, LICENSE.TXT, for details.

Revision
915
Date
2007-05-18 01:27:47 -0400 (Fri, 18 May 2007)

Definition in file dlrCommon/functional.h.


Generated on Mon Jul 9 20:34:07 2007 for dlrLibs Utility Libraries by  doxygen 1.5.2