# Spec Pizza &amp; Chili String
String used by the Pizza & Chili indices.

Extends | String
All Extended | String
All Impl'd | AssignableConcept, ContainerConcept, DestructibleConcept, ForwardContainerConcept, RandomAccessContainerConcept, ReversibleContainerConcept, SegmentableConcept, StringConcept, TextConcept
Defined in | <seqan/index.h>
Signature | `template <typename TValue, typename TSpec> class String<TValue, PizzaChili<TSpec> >;`

## Template Parameters

`TSpec` | Tag specifying the Pizza & Chili index library to use. Types: PizzaChiliIndexTags
`TValue` | The value type, that is the type of them items/characters stored in the string.This type must be a simple type and it must hold that `sizeof(TValue) == 1`.

## Member Function Overview

### Member Functions Inherited From String

- `operator=`
- `String`

### Member Functions Inherited From AssignableConcept

- `operator=`

### Member Functions Inherited From RandomAccessContainerConcept

- `operator[]`

## Interface Function Overview

### Interface Functions Inherited From String

- `beginPosition`
- `endPosition`
- `reserve`
- `resizeSpace`
- `toCString`

### Interface Functions Inherited From AssignableConcept

- `assign`
- `set`
- `move`

### Interface Functions Inherited From ContainerConcept

- `writeValue`
- `write`
- `begin`
- `end`
- `length`
- `empty`
- `swap`
- `getObjectId`
- `moveValue`
- `append`
- `appendValue`
- `shrinkToFit`
- `directionIterator`

### Interface Functions Inherited From RandomAccessContainerConcept

- `value`
- `assignValue`
- `getValue`

### Interface Functions Inherited From SegmentableConcept

- `prefix`
- `infixWithLength`
- `infix`
- `suffix`

### Interface Functions Inherited From StringConcept

- `iter`
- `append`
- `appendValue`
- `front`
- `back`
- `resize`
- `clear`
- `erase`
- `eraseFront`
- `eraseBack`
- `capacity`
- `computeGenerousCapacity`
- `insert`
- `insertValue`
- `replace`

### Interface Functions Inherited From TextConcept

- `stringSetLimits`
- `posLocalToX`
- `posLocalize`
- `posGlobalize`
- `getSeqNo`
- `getSeqOffset`

## Interface Metafunction Overview

### Interface Metafunctions Inherited From ContainerConcept

- `DefaultGetIteratorSpec`
- `DefaultIteratorSpec`
- `Difference`
- `DirectionIterator`
- `GetValue`
- `Iterator`
- `Position`
- `Reference`
- `Size`
- `Value`

### Interface Metafunctions Inherited From SegmentableConcept

- `Infix`
- `Prefix`
- `Suffix`

### Interface Metafunctions Inherited From TextConcept

- `SAValue`
- `StringSetLimits`

## Detailed Description

The string is lazy in the sense that it holds a reference to the compressed index structure it is associated with. Only when the text is actually read, the index is queried for the text. If only a substring is needed, this string tries to query only a substring.

## See Also

- PizzaChiliIndex
- PizzaChiliIndexTags

#### Dox Sources

    /*!
     * @class PizzaChiliString Pizza &amp; Chili String
     *
     * @extends String
     *
     * @headerfile <seqan/index.h>
     *
     * @brief String used by the Pizza &amp; Chili indices.
     *
     * @signature template <typename TValue, typename TSpec> class String<TValue,
     *            PizzaChili<TSpec> >;
     *
     * @tparam TSpec Tag specifying the Pizza &amp; Chili index library to use.
     *               Types: PizzaChiliIndexTags
     * @tparam TValue The value type, that is the type of them items/characters
     *                stored in the string.This type must be a simple type and it
     *                must hold that <tt>sizeof(TValue) == 1</tt>.
     *
     * The string is lazy in the sense that it holds a reference to the compressed
     * index structure it is associated with. Only when the text is actually read,
     * the index is queried for the text. If only a substring is needed, this string
     * tries to query only a substring.
     *
     * @see PizzaChiliIndex
     * @see PizzaChiliIndexTags
     */