SeqAn3 3.1.0
The Modern C++ library for sequence analysis.
seqan3::literals Namespace Reference

The SeqAn namespace for literals. More...

Functions

Other literals
constexpr cigar::operation operator""_cigar_operation (char const c) noexcept
 The seqan3::cigar::operation char literal. More...
 
template<typename char_t , char_t ... s>
constexpr uint16_t operator""_tag ()
 The SAM tag literal, such that tags can be used in constant expressions. More...
 
constexpr shape operator""_shape (unsigned long long const value)
 The seqan3::shape literal. More...
 
Nucleotide literals
constexpr dna15 operator""_dna15 (char const c) noexcept
 The seqan3::dna15 char literal. More...
 
dna15_vector operator""_dna15 (char const *s, std::size_t n)
 The seqan3::dna15 string literal. More...
 
constexpr dna16sam operator""_dna16sam (char const c) noexcept
 The seqan3::dna16sam char literal. More...
 
dna16sam_vector operator""_dna16sam (char const *s, size_t n)
 The seqan3::dna16sam string literal. More...
 
constexpr dna3bs operator""_dna3bs (char const c) noexcept
 The seqan3::dna3bs char literal. More...
 
dna3bs_vector operator""_dna3bs (char const *s, std::size_t n)
 The seqan3::dna3bs string literal. More...
 
constexpr dna4 operator""_dna4 (char const c) noexcept
 The seqan3::dna4 char literal. More...
 
dna4_vector operator""_dna4 (char const *s, std::size_t n)
 The seqan3::dna4 string literal. More...
 
constexpr dna5 operator""_dna5 (char const c) noexcept
 The seqan3::dna5 char literal. More...
 
dna5_vector operator""_dna5 (char const *s, std::size_t n)
 The seqan3::dna5 string literal. More...
 
constexpr rna15 operator""_rna15 (char const c) noexcept
 The seqan3::rna15 char literal. More...
 
rna15_vector operator""_rna15 (char const *s, std::size_t n)
 The seqan3::rna15 string literal. More...
 
constexpr rna4 operator""_rna4 (char const c) noexcept
 The seqan3::rna4 char literal. More...
 
rna4_vector operator""_rna4 (char const *s, std::size_t n)
 The seqan3::rna4 string literal. More...
 
constexpr rna5 operator""_rna5 (char const c) noexcept
 The seqan3::rna5 char literal. More...
 
rna5_vector operator""_rna5 (char const *s, std::size_t n)
 The seqan3::rna5 string literal. More...
 
Quality literals
constexpr phred42 operator""_phred42 (char const c) noexcept
 The seqan3::phred42 char literal. More...
 
constexpr phred63 operator""_phred63 (char const c) noexcept
 The seqan3::phred63 char literal. More...
 
constexpr phred68solexa operator""_phred68solexa (char const c) noexcept
 The seqan3::phred68solexa char literal. More...
 
constexpr phred94 operator""_phred94 (char const c) noexcept
 The seqan3::phred94 char literal. More...
 
Structure literals
constexpr dot_bracket3 operator""_db3 (char const ch) noexcept
 The seqan3::db3 char literal. More...
 
std::vector< dot_bracket3operator""_db3 (const char *str, std::size_t len)
 The seqan3::db3 string literal. More...
 
constexpr dssp9 operator""_dssp9 (char const ch) noexcept
 The seqan3::dssp9 char literal. More...
 
std::vector< dssp9operator""_dssp9 (const char *str, std::size_t len)
 The seqan3::dssp9 string literal. More...
 
constexpr wuss51 operator""_wuss51 (char const ch) noexcept
 The seqan3::wuss51 char literal. More...
 
std::vector< wuss51 > operator""_wuss51 (const char *str, std::size_t len)
 The seqan3::wuss51 string literal. More...
 

Detailed Description

The SeqAn namespace for literals.

This namespace can be imported to use SeqAn3's literal operators:

int main()
{
using namespace seqan3::literals;
seqan3::dna4 letter = 'A'_dna4; // identical to assign_char_to('A', letter);
seqan3::dna4_vector sequence = "ACGT"_dna4; // identical to calling assign_char for each element
}
The four letter DNA alphabet of A,C,G,T..
Definition: dna4.hpp:53
Provides seqan3::dna4, container aliases and string literals.
The generic concept for a (biological) sequence.
The SeqAn namespace for literals.

Function Documentation

◆ operator""_cigar_operation()

constexpr cigar::operation seqan3::literals::operator""_cigar_operation ( char const  c)
constexprnoexcept

The seqan3::cigar::operation char literal.

Returns
seqan3::cigar::operation

You can use this char literal to assign a seqan3::cigar_operation character:

int main()
{
using namespace seqan3::literals;
seqan3::cigar::operation letter1{'M'_cigar_operation};
auto letter2 = 'M'_cigar_operation;
}
Provides the seqan3::cigar alphabet.
The actual implementation of seqan3::cigar::operation for documentation purposes only....
Definition: cigar_operation.hpp:48

This entity is stable. Since version 3.1.

◆ operator""_db3() [1/2]

constexpr dot_bracket3 seqan3::literals::operator""_db3 ( char const  ch)
constexprnoexcept

The seqan3::db3 char literal.

Parameters
[in]chThe character to represent as dot bracket.
Returns
seqan3::dot_bracket3

You can use this char literal to assign a seqan3::dot_bracket3 character:

int main()
{
using namespace seqan3::literals;
seqan3::dot_bracket3 letter1{'('_db3};
auto letter2 = '('_db3;
}
The three letter RNA structure alphabet of the characters ".()"..
Definition: dot_bracket3.hpp:54
Provides the dot bracket format for RNA structure.

This entity is experimental and subject to change in the future. Experimental since version 3.1.

◆ operator""_db3() [2/2]

std::vector< dot_bracket3 > seqan3::literals::operator""_db3 ( const char *  str,
std::size_t  len 
)
inline

The seqan3::db3 string literal.

Parameters
[in]strA pointer to the character string to assign.
[in]lenThe size of the character string to assign.
Returns
std::vector<seqan3::dot_bracket3>

You can use this string literal to easily assign to std::vector<seqan3::dot_bracket3>:

int main()
{
using namespace seqan3::literals;
std::vector<seqan3::dot_bracket3> sequence1{".(..)."_db3};
std::vector<seqan3::dot_bracket3> sequence2 = ".(..)."_db3;
auto sequence3 = ".(..)."_db3;
}

This entity is experimental and subject to change in the future. Experimental since version 3.1.

◆ operator""_dna15() [1/2]

dna15_vector seqan3::literals::operator""_dna15 ( char const *  s,
std::size_t  n 
)
inline

The seqan3::dna15 string literal.

Returns
seqan3::dna15_vector

You can use this string literal to easily assign to dna15_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna15_vector sequence1{"ACGTTA"_dna15};
seqan3::dna15_vector sequence2 = "ACGTTA"_dna15;
auto sequence3 = "ACGTTA"_dna15;
}
Provides seqan3::dna15, container aliases and string literals.

This entity is stable. Since version 3.1.

◆ operator""_dna15() [2/2]

constexpr dna15 seqan3::literals::operator""_dna15 ( char const  c)
constexprnoexcept

The seqan3::dna15 char literal.

Returns
seqan3::dna15

You can use this char literal to assign a seqan3::dna15 character:

int main()
{
using namespace seqan3::literals;
seqan3::dna15 letter1{'A'_dna15};
auto letter2 = 'A'_dna15;
}
The 15 letter DNA alphabet, containing all IUPAC smybols minus the gap..
Definition: dna15.hpp:51

This entity is stable. Since version 3.1.

◆ operator""_dna16sam() [1/2]

dna16sam_vector seqan3::literals::operator""_dna16sam ( char const *  s,
size_t  n 
)
inline

The seqan3::dna16sam string literal.

Returns
seqan3::dna16sam_vector
Parameters
[in]sThe string literal to assign from.
[in]nThe length of the string literal s.

You can use this string literal to easily assign to seqan3::dna16sam_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna16sam_vector sequence1{"ACGTTA"_dna16sam};
seqan3::dna16sam_vector sequence2 = "ACGTTA"_dna16sam;
auto sequence3 = "ACGTTA"_dna16sam;
}
Provides seqan3::dna16sam.

This entity is stable. Since version 3.1.

◆ operator""_dna16sam() [2/2]

constexpr dna16sam seqan3::literals::operator""_dna16sam ( char const  c)
constexprnoexcept

The seqan3::dna16sam char literal.

Returns
seqan3::dna16sam
Parameters
[in]cThe character to assign from.

You can use this char literal to assign a seqan3::dna16sam character:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_char_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna16sam letter1{'A'_dna16sam};
auto letter2 = 'A'_dna16sam;
}
A 16 letter DNA alphabet, containing all IUPAC symbols minus the gap and plus an equality sign ('=')....
Definition: dna16sam.hpp:48

This entity is stable. Since version 3.1.

◆ operator""_dna3bs() [1/2]

dna3bs_vector seqan3::literals::operator""_dna3bs ( char const *  s,
std::size_t  n 
)
inline

The seqan3::dna3bs string literal.

Returns
seqan3::dna3bs_vector

You can use this string literal to easily assign to dna3bs_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna3bs_vector sequence1{"ACGTTA"_dna3bs};
seqan3::dna3bs_vector sequence2 = "ACGTTA"_dna3bs;
auto sequence3 = "ACGTTA"_dna3bs;
}
Provides seqan3::dna3bs, container aliases and string literals.

This entity is stable. Since version 3.1.

◆ operator""_dna3bs() [2/2]

constexpr dna3bs seqan3::literals::operator""_dna3bs ( char const  c)
constexprnoexcept

The seqan3::dna3bs char literal.

Returns
seqan3::dna3bs

You can use this char literal to assign a seqan3::dna3bs character:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_char_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna3bs letter1{'A'_dna3bs};
auto letter2 = 'A'_dna3bs;
}
The three letter reduced DNA alphabet for bisulfite sequencing mode (A,G,T(=C))..
Definition: dna3bs.hpp:61

This entity is stable. Since version 3.1.

◆ operator""_dna4() [1/2]

dna4_vector seqan3::literals::operator""_dna4 ( char const *  s,
std::size_t  n 
)
inline

The seqan3::dna4 string literal.

Returns
seqan3::dna4_vector You can use this string literal to easily assign to dna4_vector:
// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna4_vector sequence1{"ACGTTA"_dna4};
seqan3::dna4_vector sequence2 = "ACGTTA"_dna4;
auto sequence3 = "ACGTTA"_dna4;
}

This entity is stable. Since version 3.1.

◆ operator""_dna4() [2/2]

constexpr dna4 seqan3::literals::operator""_dna4 ( char const  c)
constexprnoexcept

The seqan3::dna4 char literal.

Returns
seqan3::dna4

You can use this char literal to assign a seqan3::dna4 character:

int main()
{
using namespace seqan3::literals;
seqan3::dna4 letter1{'A'_dna4};
auto letter2 = 'A'_dna4;
}

This entity is stable. Since version 3.1.

◆ operator""_dna5() [1/2]

dna5_vector seqan3::literals::operator""_dna5 ( char const *  s,
std::size_t  n 
)
inline

The seqan3::dna5 string literal.

Returns
seqan3::dna5_vector

You can use this string literal to easily assign to dna5_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::dna5_vector sequence1{"ACGTTA"_dna5};
seqan3::dna5_vector sequence2 = "ACGTTA"_dna5;
auto sequence3 = "ACGTTA"_dna5;
}
Provides seqan3::dna5, container aliases and string literals.

This entity is stable. Since version 3.1.

◆ operator""_dna5() [2/2]

constexpr dna5 seqan3::literals::operator""_dna5 ( char const  c)
constexprnoexcept

The seqan3::dna5 char literal.

Returns
seqan3::dna5

You can use this char literal to assign a seqan3::dna4 character:

int main()
{
using namespace seqan3::literals;
seqan3::dna4 letter1{'A'_dna4};
auto letter2 = 'A'_dna4;
}

This entity is stable. Since version 3.1.

◆ operator""_dssp9() [1/2]

constexpr dssp9 seqan3::literals::operator""_dssp9 ( char const  ch)
constexprnoexcept

The seqan3::dssp9 char literal.

Parameters
[in]chThe character to represent as dssp.
Returns
seqan3::dssp9

You can use this char literal to assign a seqan3::dssp9 character:

int main()
{
using namespace seqan3::literals;
seqan3::dssp9 letter1{'('_dssp9};
auto letter2 = '('_dssp9;
}
The protein structure alphabet of the characters "HGIEBTSCX"..
Definition: dssp9.hpp:63
Provides the dssp format for protein structure.

This entity is experimental and subject to change in the future. Experimental since version 3.1.

◆ operator""_dssp9() [2/2]

std::vector< dssp9 > seqan3::literals::operator""_dssp9 ( const char *  str,
std::size_t  len 
)
inline

The seqan3::dssp9 string literal.

Parameters
[in]strA pointer to the character string to assign.
[in]lenThe size of the character string to assign.
Returns
std::vector<seqan3::dssp9>

You can use this string literal to easily assign to std::vector<seqan3::dssp9>:

int main()
{
using namespace seqan3::literals;
std::vector<seqan3::dssp9> sequence1{"EHHHHT"_dssp9};
std::vector<seqan3::dssp9> sequence2 = "EHHHHT"_dssp9;
auto sequence3 = "EHHHHT"_dssp9;
}

This entity is experimental and subject to change in the future. Experimental since version 3.1.

◆ operator""_phred42()

constexpr phred42 seqan3::literals::operator""_phred42 ( char const  c)
constexprnoexcept

The seqan3::phred42 char literal.

Returns
seqan3::phred42

You can use this char literal to assign a seqan3::phred42 character:

int main()
{
using namespace seqan3::literals;
seqan3::phred42 letter1{'!'_phred42};
auto letter2 = '!'_phred42;
}
Quality type for traditional Sanger and modern Illumina Phred scores..
Definition: phred42.hpp:47
Provides seqan3::phred42 quality scores.

This entity is stable. Since version 3.1.

◆ operator""_phred63()

constexpr phred63 seqan3::literals::operator""_phred63 ( char const  c)
constexprnoexcept

The seqan3::phred63 char literal.

Returns
seqan3::phred63

You can use this char literal to assign a seqan3::phred63 character:

int main()
{
using namespace seqan3::literals;
seqan3::phred63 letter1{'!'_phred63};
auto letter2 = '!'_phred63;
}
Quality type for traditional Sanger and modern Illumina Phred scores..
Definition: phred63.hpp:47
Provides seqan3::phred63 quality scores.

This entity is stable. Since version 3.1.

◆ operator""_phred68solexa()

constexpr phred68solexa seqan3::literals::operator""_phred68solexa ( char const  c)
constexprnoexcept

The seqan3::phred68solexa char literal.

Returns
seqan3::phred68solexa

You can use this char literal to assign a seqan3::phred68solexa character:

int main()
{
using namespace seqan3::literals;
seqan3::phred68solexa letter1{'!'_phred68solexa};
auto letter2 = '!'_phred68solexa;
}
Quality type for Solexa and deprecated Illumina formats..
Definition: phred68solexa.hpp:40
Provides seqan3::phred68solexa quality scores.

This entity is stable. Since version 3.1.

◆ operator""_phred94()

constexpr phred94 seqan3::literals::operator""_phred94 ( char const  c)
constexprnoexcept

The seqan3::phred94 char literal.

Returns
seqan3::phred94

You can use this char literal to assign a seqan3::phred94 character:

int main()
{
using namespace seqan3::literals;
seqan3::phred94 letter1{'!'_phred94};
auto letter2 = '!'_phred94;
}
Quality type for PacBio Phred scores of HiFi reads..
Definition: phred94.hpp:44
Provides seqan3::phred94 quality scores.

This entity is stable. Since version 3.1.

◆ operator""_rna15() [1/2]

rna15_vector seqan3::literals::operator""_rna15 ( char const *  s,
std::size_t  n 
)
inline

The seqan3::rna15 string literal.

Returns
seqan3::rna15_vector

You can use this string literal to easily assign to rna15_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::rna15_vector sequence1{"ACGTTA"_rna15};
seqan3::rna15_vector sequence2 = "ACGTTA"_rna15;
auto sequence3 = "ACGTTA"_rna15;
}
Provides seqan3::rna15, container aliases and string literals.

This entity is stable. Since version 3.1.

◆ operator""_rna15() [2/2]

constexpr rna15 seqan3::literals::operator""_rna15 ( char const  c)
constexprnoexcept

The seqan3::rna15 char literal.

Returns
seqan3::rna15

You can use this char literal to assign a seqan3::rna15 character:

int main()
{
using namespace seqan3::literals;
seqan3::rna15 letter1{'A'_rna15};
auto letter2 = 'A'_rna15;
}
The 15 letter RNA alphabet, containing all IUPAC smybols minus the gap..
Definition: rna15.hpp:51

This entity is stable. Since version 3.1.

◆ operator""_rna4() [1/2]

rna4_vector seqan3::literals::operator""_rna4 ( char const *  s,
std::size_t  n 
)
inline

The seqan3::rna4 string literal.

Returns
seqan3::rna4_vector

You can use this string literal to easily assign to rna4_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::rna4_vector sequence1{"ACGTTA"_rna4};
seqan3::rna4_vector sequence2 = "ACGTTA"_rna4;
auto sequence3 = "ACGTTA"_rna4;
}
Provides seqan3::rna4, container aliases and string literals.

This entity is stable. Since version 3.1.

◆ operator""_rna4() [2/2]

constexpr rna4 seqan3::literals::operator""_rna4 ( char const  c)
constexprnoexcept

The seqan3::rna4 char literal.

Returns
seqan3::rna4

You can use this char literal to assign a seqan3::rna4 character:

int main()
{
using namespace seqan3::literals;
seqan3::rna4 letter1{'A'_rna4};
auto letter2 = 'A'_rna4;
}
The four letter RNA alphabet of A,C,G,U..
Definition: rna4.hpp:49

This entity is stable. Since version 3.1.

◆ operator""_rna5() [1/2]

rna5_vector seqan3::literals::operator""_rna5 ( char const *  s,
std::size_t  n 
)
inline

The seqan3::rna5 string literal.

Returns
seqan3::rna5_vector

You can use this string literal to easily assign to rna5_vector:

// generated from test/snippet/alphabet/nucleotide/@target_alphabet@_literal.cpp.in
int main()
{
using namespace seqan3::literals;
seqan3::rna5_vector sequence1{"ACGTTA"_rna5};
seqan3::rna5_vector sequence2 = "ACGTTA"_rna5;
auto sequence3 = "ACGTTA"_rna5;
}
Provides seqan3::rna5, container aliases and string literals.

This entity is stable. Since version 3.1.

◆ operator""_rna5() [2/2]

constexpr rna5 seqan3::literals::operator""_rna5 ( char const  c)
constexprnoexcept

The seqan3::rna5 char literal.

Returns
seqan3::rna5

You can use this char literal to assign a seqan3::rna5 character:

int main()
{
using namespace seqan3::literals;
seqan3::rna5 letter1{'A'_rna5};
auto letter2 = 'A'_rna5;
}
The five letter RNA alphabet of A,C,G,U and the unknown character N..
Definition: rna5.hpp:49

This entity is stable. Since version 3.1.

◆ operator""_shape()

constexpr shape seqan3::literals::operator""_shape ( unsigned long long const  value)
constexpr

The seqan3::shape literal.

Parameters
[in]valueThe unsigned integer to assign.
Returns
seqan3::shape

◆ operator""_wuss51() [1/2]

constexpr wuss51 seqan3::literals::operator""_wuss51 ( char const  ch)
constexprnoexcept

The seqan3::wuss51 char literal.

Parameters
[in]chThe character to represent as wuss.
Returns
seqan3::wuss51

You can use this char literal to assign a seqan3::wuss51 character:

int main()
{
using namespace seqan3::literals;
seqan3::wuss51 letter1{'('_wuss51};
auto letter2 = '('_wuss51;
}
Provides the WUSS format for RNA structure.

This entity is experimental and subject to change in the future. Experimental since version 3.1.

◆ operator""_wuss51() [2/2]

std::vector< wuss51 > seqan3::literals::operator""_wuss51 ( const char *  str,
std::size_t  len 
)
inline

The seqan3::wuss51 string literal.

Parameters
[in]strA pointer to the character string to assign.
[in]lenThe size of the character string to assign.
Returns
std::vector<seqan3::wuss51>

You can use this string literal to easily assign to std::vector<seqan3::wuss51>:

int main()
{
using namespace seqan3::literals;
std::vector<seqan3::wuss51> sequence1{".<..>."_wuss51};
std::vector<seqan3::wuss51> sequence2 = ".<..>."_wuss51;
auto sequence3 = ".<..>."_wuss51;
}

This entity is experimental and subject to change in the future. Experimental since version 3.1.