Concept
IntegerConcept
An integral type.

LessThanComparableConcept

ComparableConcept | EqualityComparableConcept

IntegerConcept

SignedIntegerConcept | UnsignedIntegerConcept

Concept Definition
Refines
EqualityComparableConcept, ComparableConcept
Required Functions

operator> | C++ built-in greater-than comparison operator. (ComparableConcept)
operator>= | C++ built-in greather-than-or-equal comparison operator. (ComparableConcept)
operator< | C++ built-in less-than comparison operator. (LessThanComparableConcept)
operator<= | C++ built-in less-than-or-equal comparison operator. (ComparableConcept)

Refinements

SignedIntegerConcept | An integral type with a sign.
UnsignedIntegerConcept | An integral type without a sign.

IntegerConcept<T>
Include Headers
seqan/basic.h
Remarks
Expects an instance of type T to be of integral value and to provide the same operations as int. The integer concept imposes no restrictions on an available sign. Every type T that fulfills the IntegerConcept fulfills either the SignedIntegerConcept or the UnsignedIntegerConcept.
Functions

addSeed | Adds a seed to an existing SeedSet using different algorithms for local chaining.

Examples
SEQAN_CONCEPT_ASSERT((IntegerConcept<int>));
SEQAN_CONCEPT_ASSERT((IntegerConcept<char>));
//SEQAN_CONCEPT_ASSERT((IntegerConcept<double>)); // fails to compile
std::cout << Is<IntegerConcept<char> >::VALUE << std::endl; // 1
std::cout << Is<IntegerConcept<int> >::VALUE << std::endl; // 1
std::cout << Is<IntegerConcept<unsigned short> >::VALUE << std::endl; // 1
std::cout << Is<IntegerConcept<double> >::VALUE << std::endl; // 0
Valid expressions:
T a, b;
int c;
a = 0u;
b = 1u;
c = a;
b = a + 1u;
b = a + a;
b += a;
b += 1u;
b = a++;
b = ++a;
b = a - a;
b = a - 1u;
b -= a;
b -= 1u;
b = a--;
b = --a;
b = a * a;
b = a * 1u;
b *= a;
b *= 1u;
b = a / a;
b = a / 1u;
b /= a;
b /= 1u;
b = a << a;
b = a << 1;
b <<= a;
b <<= 1;
b = a >> a;
b = a >> 1;
b >>= a;
b >>= 1;
See Also
SignedIntegerConcept, UnsignedIntegerConcept
SeqAn - Sequence Analysis Library - www.seqan.de

Page built @2014/10/13 16:12:57