// Copyright 2025 Steven Le Rouzic // // SPDX-License-Identifier: BSD-3-Clause #pragma once #include "asl/types/status_or.hpp" #include "asl/strings/string_view.hpp" namespace asl { template struct parse_number_result { T value; string_view remaining; }; status_or> parse_float(string_view); status_or> parse_double(string_view); status_or> parse_uint8(string_view, int base = 10); status_or> parse_uint16(string_view, int base = 10); status_or> parse_uint32(string_view, int base = 10); status_or> parse_uint64(string_view, int base = 10); status_or> parse_int8(string_view, int base = 10); status_or> parse_int16(string_view, int base = 10); status_or> parse_int32(string_view, int base = 10); status_or> parse_int64(string_view, int base = 10); } // namespace asl