19#ifndef CPPREALM_BRIDGE_TIMESTAMP_HPP
20#define CPPREALM_BRIDGE_TIMESTAMP_HPP
23#include <cprealm/internal/bridge/utils.hpp>
29namespace realm::internal::bridge {
37 carimbo de data/hora ( carimbo de data/hora
const &);
38 operador Timestamp()
const;
39 operador std::chrono::time_point()<std::chrono::system_clock>
const;
40 carimbo de data/hora (int64_t segundos, int32_t nanossegundos);
41 registro de data e
hora(
const std::chrono::time_point<std::chrono::system_clock>& tp);
42 [[nodiscard]] int64_t get_seconds()
const noexceto;
43 [[nodiscard]] int32_t get_nanosseconds()
const noexceto;
44 [[nodiscard]] std::chrono::time_point<std::chrono::system_lock, std::chrono::system_lock::duration>
45 get_time_point()
const {
46 int64_t native_nano = get_seconds() * nanossegundos_per_segundo + get_nanossegundos();
47 auto duration = std::chrono::duration_cast<std::chrono::system_clock::duration>(std::chrono::duration<int64_t, std::nano>{native_nano});
48 return std::chrono::time_point<std::chrono::system_lock,
49 std::chrono::system_lock::duração>(duração);
52 estático constexpr int32_t nanossegundos_per_second = 1000000000;
53 int64_t m_seconds = 0;
54 int32_t m_nanossegundos = 0;
Definição: timestamp.hpp:30