Sourcemeta Core 0.0.0
Loading...
Searching...
No Matches
numeric_parse.h
1#ifndef SOURCEMETA_CORE_NUMERIC_PARSE_H
2#define SOURCEMETA_CORE_NUMERIC_PARSE_H
3
4#ifndef SOURCEMETA_CORE_NUMERIC_EXPORT
5#include <sourcemeta/core/numeric_export.h>
6#endif
7
8#include <cstdint> // std::int64_t, std::uint16_t, std::uint32_t, std::uint64_t
9#include <optional> // std::optional
10#include <string_view> // std::string_view
11
12namespace sourcemeta::core {
13
16SOURCEMETA_CORE_NUMERIC_EXPORT
17auto to_double(const std::string_view input) noexcept -> std::optional<double>;
18
21SOURCEMETA_CORE_NUMERIC_EXPORT
22auto to_int64_t(const std::string_view input) noexcept
23 -> std::optional<std::int64_t>;
24
27SOURCEMETA_CORE_NUMERIC_EXPORT
28auto to_int64_t(const std::string_view input, const int base) noexcept
29 -> std::optional<std::int64_t>;
30
33SOURCEMETA_CORE_NUMERIC_EXPORT
34auto to_uint64_t(const std::string_view input) noexcept
35 -> std::optional<std::uint64_t>;
36
39SOURCEMETA_CORE_NUMERIC_EXPORT
40auto to_uint32_t(const std::string_view input) noexcept
41 -> std::optional<std::uint32_t>;
42
45SOURCEMETA_CORE_NUMERIC_EXPORT
46auto to_uint32_t(const std::string_view input, const int base) noexcept
47 -> std::optional<std::uint32_t>;
48
51SOURCEMETA_CORE_NUMERIC_EXPORT
52auto to_uint16_t(const std::string_view input) noexcept
53 -> std::optional<std::uint16_t>;
54
55} // namespace sourcemeta::core
56
57#endif
SOURCEMETA_CORE_NUMERIC_EXPORT auto to_int64_t(const std::string_view input) noexcept -> std::optional< std::int64_t >
SOURCEMETA_CORE_NUMERIC_EXPORT auto to_uint32_t(const std::string_view input) noexcept -> std::optional< std::uint32_t >
SOURCEMETA_CORE_NUMERIC_EXPORT auto to_uint64_t(const std::string_view input) noexcept -> std::optional< std::uint64_t >
SOURCEMETA_CORE_NUMERIC_EXPORT auto to_uint16_t(const std::string_view input) noexcept -> std::optional< std::uint16_t >
SOURCEMETA_CORE_NUMERIC_EXPORT auto to_double(const std::string_view input) noexcept -> std::optional< double >