SeqAn3  3.0.1
The Modern C++ library for sequence analysis.
pre.hpp
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------------------------------
2 // Copyright (c) 2006-2020, Knut Reinert & Freie Universität Berlin
3 // Copyright (c) 2016-2020, Knut Reinert & MPI für molekulare Genetik
4 // This file may be used, modified and/or redistributed under the terms of the 3-clause BSD-License
5 // shipped with this file and also available at: https://github.com/seqan/seqan3/blob/master/LICENSE.md
6 // -----------------------------------------------------------------------------------------------------
7 
13 #pragma once
14 
15 #include <seqan3/core/platform.hpp>
16 
17 namespace seqan3
18 {
19 
24 // ----------------------------------------------------------------------------
25 // value_type
26 // ----------------------------------------------------------------------------
27 
40 template <typename t>
41 struct value_type;
42 
47 template <typename t>
49 
50 // see specialisation for iterators in core/type_traits/iterator.hpp
51 // see specialisation for ranges in core/type_traits/range.hpp
52 
53 // ----------------------------------------------------------------------------
54 // reference
55 // ----------------------------------------------------------------------------
56 
69 template <typename t>
70 struct reference;
71 
76 template <typename t>
78 
79 // see specialisation for iterators in core/type_traits/iterator.hpp
80 // see specialisation for ranges in core/type_traits/range.hpp
81 
82 // ----------------------------------------------------------------------------
83 // rvalue_reference
84 // ----------------------------------------------------------------------------
85 
98 template <typename t>
100 
105 template <typename t>
107 
108 // see specialisation for iterators in core/type_traits/iterator.hpp
109 // see specialisation for ranges in core/type_traits/range.hpp
110 
111 // ----------------------------------------------------------------------------
112 // const_reference
113 // ----------------------------------------------------------------------------
114 
129 template <typename t>
131 
136 template <typename t>
138 
139 // no specialisation for iterators
140 // see specialisation for ranges in core/type_traits/range.hpp
141 
142 // ----------------------------------------------------------------------------
143 // difference_type
144 // ----------------------------------------------------------------------------
145 
158 template <typename t>
160 
165 template <typename t>
167 
168 // see specialisation for iterators in core/type_traits/iterator.hpp
169 // see specialisation for ranges in core/type_traits/range.hpp
170 
171 // ----------------------------------------------------------------------------
172 // size_type
173 // ----------------------------------------------------------------------------
174 
187 template <typename t>
188 struct size_type;
189 
194 template <typename t>
196 
197 // see specialisation for iterators in core/type_traits/iterator.hpp
198 // see specialisation for ranges in core/type_traits/range.hpp
199 
201 
202 } // namespace seqan3
seqan3::difference_type_t
typename difference_type< t >::type difference_type_t
Shortcut for seqan3::difference_type (transformation_trait shortcut).
Definition: pre.hpp:166
seqan3::reference_t
typename reference< t >::type reference_t
Shortcut for seqan3::reference (transformation_trait shortcut).
Definition: pre.hpp:77
seqan3::size_type_t
typename size_type< t >::type size_type_t
Shortcut for seqan3::size_type (transformation_trait shortcut).
Definition: pre.hpp:195
seqan3::const_reference_t
typename const_reference< t >::type const_reference_t
Shortcut for seqan3::const_reference (transformation_trait shortcut).
Definition: pre.hpp:137
seqan3::value_type
Exposes the value_type of another type.
Definition: pre.hpp:41
seqan3::value_type_t
typename value_type< t >::type value_type_t
Shortcut for seqan3::value_type (transformation_trait shortcut).
Definition: pre.hpp:48
seqan3::difference_type
Exposes the difference_type of another type.
Definition: pre.hpp:159
seqan3
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:36
seqan3::reference
Exposes the reference of another type.
Definition: pre.hpp:70
seqan3::size_type
Exposes the size_type of another type.
Definition: pre.hpp:188
seqan3::const_reference
Exposes the const_reference of another type.
Definition: pre.hpp:130
platform.hpp
Provides platform and dependency checks.
seqan3::rvalue_reference_t
typename rvalue_reference< t >::type rvalue_reference_t
Shortcut for seqan3::rvalue_reference (transformation_trait shortcut).
Definition: pre.hpp:106
seqan3::rvalue_reference
Exposes the rvalue_reference of another type.
Definition: pre.hpp:99