# ConceptSignedIntegerConceptAn integral type with a sign.

Extends IntegerConcept AssignableConcept, ComparableConcept, CopyConstructibleConcept, DefaultConstructibleConcept, DestructibleConcept, EqualityComparableConcept, IntegerConcept, LessThanComparableConcept ```SignedIntegerConcept ```

## Detailed Description

Expects an instance of type T to represent (possibly negative) integral values and to provide the same operations as int. Every type T that fulfills the IntegerConcept fulfills either the SignedIntegerConcept or the UnsignedIntegerConcept.

### Examples

```SEQAN_CONCEPT_ASSERT((SignedIntegerConcept<int>));
//SEQAN_CONCEPT_ASSERT((SignedIntegerConcept<unsigned short>));             // fails to compile

std::cout << Is<SignedIntegerConcept<char> >::VALUE << std::endl;           // 0
std::cout << Is<SignedIntegerConcept<int> >::VALUE << std::endl;            // 0
std::cout << Is<SignedIntegerConcept<unsigned short> >::VALUE << std::endl; // 1
std::cout << Is<SignedIntegerConcept<double> >::VALUE << std::endl;         // 0
```

### Valid Expressions

```T a;
int b;

a = -1;
b = a;

a = a - a;
a = a + 1;
a = a - 1;

a = a / 2;

static_cast<T>(-1) < static_cast<T>(0);
```

## Member Function Overview

### Member Functions Inherited From AssignableConcept

• `operator=`

### Member Functions Inherited From ComparableConcept

• `operator>`

### Member Functions Inherited From EqualityComparableConcept

• `operator!=`
• `operator==`

### Member Functions Inherited From LessThanComparableConcept

• `operator<`

## Interface Function Overview

### Interface Functions Inherited From AssignableConcept

• `assign`
• `move`
• `set`

### Interface Functions Inherited From ComparableConcept

• `operator<=`
• `operator>=`