added iOS source code
[wl-app.git] / iOS / Pods / Realm / include / core / realm / column_fwd.hpp
1 /*************************************************************************
2  *
3  * Copyright 2016 Realm Inc.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  **************************************************************************/
18
19 #ifndef REALM_COLUMN_FWD_HPP
20 #define REALM_COLUMN_FWD_HPP
21
22 #include <cstdint>
23
24 namespace realm {
25
26 // Regular classes
27 class ColumnBase;
28 class StringColumn;
29 class StringEnumColumn;
30 class BinaryColumn;
31 class SubtableColumn;
32 class MixedColumn;
33 class LinkColumn;
34 class LinkListColumn;
35 class TimestampColumn;
36
37 // Templated classes
38 template <class T>
39 class Column;
40 template <class T>
41 class BasicColumn;
42 template <class T>
43 class ColumnRandIterator;
44
45 namespace util {
46 template <class>
47 class Optional;
48 }
49
50 // Shortcuts, aka typedefs.
51 using IntegerColumn = Column<int64_t>;
52 using IntNullColumn = Column<util::Optional<int64_t>>;
53 using DoubleColumn = Column<double>;
54 using FloatColumn = Column<float>;
55 using IntegerColumnIterator = ColumnRandIterator<int64_t>;
56 } // namespace realm
57
58 #endif // REALM_COLUMN_FWD_HPP