Realm C++ SDK Version v2.2.0

col_key.hpp

1
2//
3// Copyright 2024 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//
18
19#ifndef CPPREALM_BRIDGE_COL_KEY_HPP
20#define CPPREALM_BRIDGE_COL_KEY_HPP
21
22#include <cinttypes>
23
24namespace realm {
25 struct ColKey;
26}
27namespace realm::internal::bridge {
28 struct col_key {
29 col_key() noexcept;
30 col_key(const col_key& other) ;
31 col_key& operator=(const col_key& other) ;
32 col_key(col_key&& other);
33 col_key& operator=(col_key&& other);
34 ~col_key() = default;
35 col_key(int64_t); //NOLINT(google-explicit-constructor)
36 col_key(const ColKey&); //NOLINT(google-explicit-constructor)
37 operator ColKey() const; //NOLINT(google-explicit-constructor)
38 operator bool() const;
39 [[nodiscard]] int64_t value() const;
40 private:
41 uint64_t m_col_key;
42 };
43}
44
45#endif //CPPREALM_BRIDGE_COL_KEY_HPP
Definition: col_key.hpp:28