quickcheck::Property< A, B, C, D > Class Template Reference

4-argument property. More...

#include <Property.hh>

Inheritance diagram for quickcheck::Property< A, B, C, D >:

quickcheck::PropertyBase< A, B, C, D, E >

List of all members.

Public Member Functions

virtual void addFixed (const A &a, const B &b, const C &c, const D &d)

Private Member Functions

virtual bool accepts (const A &a, const B &b, const C &c, const D &d)
virtual const std::string classify (const A &a, const B &b, const C &c, const D &d)
virtual void generateInput (size_t n, A &a, B &b, C &c, D &d)
virtual bool holdsFor (const A &a, const B &b, const C &c, const D &d)=0
virtual bool isTrivialFor (const A &a, const B &b, const C &c, const D &d)
bool _accepts (const A &a, const B &b, const C &c, const D &d, const Unit &e)
const std::string _classify (const A &a, const B &b, const C &c, const D &d, const Unit &e)
void _generateInput (size_t n, A &a, B &b, C &c, D &d, Unit &e)
bool _holdsFor (const A &a, const B &b, const C &c, const D &d, const Unit &e)
bool _isTrivialFor (const A &a, const B &b, const C &c, const D &d, const Unit &e)


Detailed Description

template<class A, class B, class C, class D>
class quickcheck::Property< A, B, C, D >

4-argument property.

This class models a property (see PropertyBase) with 4-argument input.

Template Parameters:
A the type of the first argument
B the type of the second argument
C the type of the third argument
D the type of the fourth argument

Member Function Documentation

template<class A, class B, class C, class D>
void quickcheck::Property< A, B, C, D >::addFixed ( const A &  a,
const B &  b,
const C &  c,
const D &  d 
) [inline, virtual]

4-argument counterpart of Property::addFixed.

Parameters:
a the first argument of the test case
b the second argument of the test case
c the third argument of the test case
d the fourth argument of the test case

template<class A, class B, class C, class D>
bool quickcheck::Property< A, B, C, D >::accepts ( const A &  a,
const B &  b,
const C &  c,
const D &  d 
) [inline, private, virtual]

Tells whether or not this property should accept given arguments.

4-argument counterpart of Property::accepts.

Parameters:
a the first argument
b the second argument
c the third argument
d the fourth argument

template<class A, class B, class C, class D>
const std::string quickcheck::Property< A, B, C, D >::classify ( const A &  a,
const B &  b,
const C &  c,
const D &  d 
) [inline, private, virtual]

Classifies input to allow observation of input distribution.

4-argument counterpart of Property::classify.

Parameters:
a the first argument
b the second argument
c the third argument
d the fourth argument

template<class A, class B, class C, class D>
void quickcheck::Property< A, B, C, D >::generateInput ( size_t  n,
A &  a,
B &  b,
C &  c,
D &  d 
) [inline, private, virtual]

Generates input randomly.

4-argument counterpart of Property::generateInput.

Parameters:
n the size hint
a the first argument
b the second argument
c the third argument
d the fourth argument

template<class A, class B, class C, class D>
virtual bool quickcheck::Property< A, B, C, D >::holdsFor ( const A &  a,
const B &  b,
const C &  c,
const D &  d 
) [private, pure virtual]

Tells whether or not this property holds for the given input.

4-argument counterpart of Property::holdsFor.

Parameters:
a the first argument
b the second argument
c the third argument
d the fourth argument

template<class A, class B, class C, class D>
bool quickcheck::Property< A, B, C, D >::isTrivialFor ( const A &  a,
const B &  b,
const C &  c,
const D &  d 
) [inline, private, virtual]

Tells whether or not the property is trivially true for the given input.

4-argument counterpart of Property::isTrivialFor.

Parameters:
a the first argument
b the second argument
c the third argument
d the fourth argument

template<class A, class B, class C, class D>
bool quickcheck::Property< A, B, C, D >::_accepts ( const A &  a,
const B &  b,
const C &  c,
const D &  d,
const Unit e 
) [inline, private]

template<class A, class B, class C, class D>
const std::string quickcheck::Property< A, B, C, D >::_classify ( const A &  a,
const B &  b,
const C &  c,
const D &  d,
const Unit e 
) [inline, private]

template<class A, class B, class C, class D>
void quickcheck::Property< A, B, C, D >::_generateInput ( size_t  n,
A &  a,
B &  b,
C &  c,
D &  d,
Unit e 
) [inline, private]

template<class A, class B, class C, class D>
bool quickcheck::Property< A, B, C, D >::_holdsFor ( const A &  a,
const B &  b,
const C &  c,
const D &  d,
const Unit e 
) [inline, private]

template<class A, class B, class C, class D>
bool quickcheck::Property< A, B, C, D >::_isTrivialFor ( const A &  a,
const B &  b,
const C &  c,
const D &  d,
const Unit e 
) [inline, private]


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

Generated on Thu Apr 9 14:09:57 2009 for QuickCheck++ by  doxygen 1.5.6