Realm C++ SDK Versão C++ v2.2.0

decimal128.hpp

1
2//
3// Autores 2024 Realm Inc.
4//
5// Licenciado sob a Licença Apache, Versão 2.0 (a "Licença");
6// você não pode usar este arquivo, exceto em conformidade com a Licença.
7// Você pode obter uma cópia da Licença em
8//
9// http://www.apache.org/license/LICENSE-2.0
10//
11// A menos que exigido pela lei aplicável ou acordado por escrito, o software
12// distribuído sob a Licença é distribuído "Como está",
13// sem garantias ou condições de qualquer tipo, Express ou implícitas.
14// Consulte a Licença para obter as permissões específicas de domínio do idioma e
15// limitações da Licença.
16//
18
19#ifndef CPPREALM_BRIDGE_DECIMAL128_HPP
20#define CPPREALM_BRIDGE_DECIMAL128_HPP
21
22#include <cprealm/internal/bridge/utils.hpp>
23
24namespace Realm {
25 estrutura decimal128;
26 classe Decimal128;
27}
28
29namespace realm::internal::bridge {
30 estrutura, estrutura decimal128 {
31 decimal128() = padrão;
32 decimal128( decimal const 128e outro);
33 decimal128& operator=(const decimal128& other) ;
34 decimal128(decimal128&& outro);
35 decimal128& operador=(decimal128&& outro);
36 ~decimal128() = padrão;
37 decimal128(const Decimal128&); //NOLINT(google-explicit-constructor);
38 explícito decimal128(const std::string&);
39 decimal128(const double&);
40 decimal128(const struct :: Realm::decimal128&); //NOLINT(google-explicit-constructor);
41 operador Decimal128() const; //NOLINT(google-explicit-constructor);
42 operador ::realm::decimal128() const; //NOLINT(google-explicit-constructor);
43 std::string to_string() const;
44 bool is_NaN() const;
45
46 operador decimal128 +( decimal const 128& o);
47 operador decimal128 *( decimal const 128& o);
48 operador decimal128 /( decimal const 128& o);
49 operador decimal128 -( decimal const 128& o);
50
51 decimal128& operador+=(const decimal128& o);
52 decimal128& operador*=(const decimal128& o);
53 decimal128& operador/=( decimal const 128& o);
54 decimal128& operador-=(const decimal128& o);
55 privado:
56 uint64_t m_decimal[2];
57
58 amigo operador bool ==( decimal const 128&, decimal const 128&);
59 amigo operador bool !=( decimal const 128&, decimal const 128&);
60 amigo operador bool >( decimal const 128&, decimal const 128&);
61 amigo operador bool <(const decimal128&, const decimal128&);
62 amigo operador bool >=( decimal const 128&, decimal const 128&);
63 amigo operador bool <=(const decimal128&, const decimal128&);
64 };
65
66 operador bool ==( decimal const 128&, decimal const 128&);
67 operador bool !=( decimal const 128&, decimal const 128&);
68 operador bool >( decimal const 128&, decimal const 128&);
69 operador bool <(const decimal128&, const decimal128&);
70 operador bool >=( decimal const 128&, decimal const 128&);
71 operador bool <=(const decimal128&, const decimal128&);
72}
73
74#endif //CPPrealm_BRIDGE_DECIMAL128_HPP
Definição: decimal128.hpp:30