Realm C++ SDK 버전 v2.2.0

decimal128.hpp

1
2//
3//저작권 2024 Realm Inc.
4//
5// Apache 라이선스, 버전 2.0("라이선스")에 따라 라이선스가 부여됩니다.
6// 라이선스를 준수하는 경우를 제외하고는 이 파일을 사용할 수 없습니다.
7// 다음에서 라이선스 사본을 얻을 수 있습니다.
8//
9// http://www.apache.org/licences/LICENSE-2.0
10//
11// 관련 법률에서 요구하거나 문서로 동의하지 않는 한, 소프트웨어
12// 라이선스에 따라 배포되는 것은 '있는 그대로' 배포됩니다,
13// Express 묵시적이든 어떤 종류의 보증이나 조건도 제공하지 않습니다.
14// 권한을 관리하는 특정 언어에 대한 내용은 라이선스를 참조하세요.
15// 라이선스에 따른 제한 사항.
16//
18
19#ifndef CPPRALM_BRIDGE_DECIMAL128_HPP
20#define CPPRALM_BRIDGE_DECIMAL128_HPP
21
22#include <cpprealm/internal/bridge/utils.hpp>
23
24네임스페이스 영역 {
25 구조체 십진수128;
26 클래스 십진수128;
27}
28
29namespace realm::internal::bridge {
30 구조체 십진수128 {
31 십진수128() = 기본값;
32 십진수128(const 십진수128& 기타) ;
33 decimal128& operator=(const decimal128& other) ;
34 십진수128(십진수128&& 기타);
35 십진수128& 연산자=(십진수128&& 기타);
36 ~decimal128() = 기본값;
37 십진수128(const 십진수128&); //NOLINT(google-explicit-constructor);
38 명시적 십진수128(const std::string&);
39 십진수128(const double&);
40 decimal128(const struct :: 영역::decimal128&); //NOLINT(google-explicit-constructor);
41 연산자 십진수128() const; //NOLINT(google-explicit-constructor);
42 연산자 ::realm::decimal128() const; //NOLINT(google-explicit-constructor);
43 std::string to_string() const;
44 bool is_NaN() const;
45
46 십진수128 연산자+(const 십진수128& o);
47 decimal128 operator*(const decimal128& o);
48 십진수128 연산자/(const 십진수128& o);
49 십진수128 연산자-(const decimal128& o);
50
51 decimal128& operator+=(const decimal128& o);
52 decimal128& operator*=(const decimal128& o);
53 decimal128& operator/=(const decimal128& o);
54 십진수128& 연산자-=(const decimal128& o);
55 private:
56 uint64_t m_decimal[2];
57
58 친구 bool 연산자 ==(const decimal128&, const decimal128&);
59 친구 bool 연산자 !=(const decimal128&, const decimal128&);
60 친구 bool 연산자 >(const decimal128&, const decimal128&);
61 친구 bool 연산자 <(const decimal128&, const decimal128&);
62 친구 bool 연산자 >=(const decimal128&, const decimal128&);
63 친구 bool 연산자 <=(const decimal128&, const decimal128&);
64 };
65
66 bool 연산자 ==(const decimal128&, const decimal128&);
67 bool 연산자 !=(const decimal128&, const decimal128&);
68 bool 연산자 >(const decimal128&, const decimal128&);
69 bool 연산자 <(const decimal128&, const decimal128&);
70 bool 연산자 >=(const decimal128&, const decimal128&);
71 bool 연산자 <=(const decimal128&, const decimal128&);
72}
73
74#endif //CPPREALM_BRIDGE_DECIMAL128_HPP
정의: 십진수128.hpp:30