AsmGrader 0.0.0
Loading...
Searching...
No Matches
static_string.hpp File Reference
#include <asmgrader/meta/static_size.hpp>
#include <fmt/base.h>
#include <fmt/compile.h>
#include <fmt/format.h>
#include <fmt/ranges.h>
#include <libassert/assert.hpp>
#include <range/v3/algorithm/copy.hpp>
#include <range/v3/algorithm/copy_if.hpp>
#include <range/v3/algorithm/copy_n.hpp>
#include <range/v3/algorithm/find.hpp>
#include <range/v3/range/access.hpp>
#include <range/v3/range/concepts.hpp>
#include <range/v3/view/subrange.hpp>
#include <algorithm>
#include <array>
#include <concepts>
#include <cstddef>
#include <iterator>
#include <limits>
#include <string>
#include <string_view>
#include <type_traits>
#include <utility>
Include dependency graph for static_string.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  asmgrader::StaticString< Size >
 A fully compile-time capable string type Guaranteed to be null-terminated. More...
 
struct  std::tuple_size<::asmgrader::StaticString< Size > >
 Specialization of tuple_size to play nice with algorithms that work on tuple-like types. More...
 
struct  std::tuple_element< I, ::asmgrader::StaticString< Size > >
 Specialization of tuple_element to play nice with algorithms that work on tuple-like types. More...
 
struct  fmt::is_range< asmgrader::StaticString< N >, CharType >
 
struct  fmt::is_tuple_like< asmgrader::StaticString< N > >
 

Namespaces

namespace  asmgrader
 
namespace  asmgrader::literals
 
namespace  std
 

Functions

template<std::size_t N>
 asmgrader::StaticString (const char(&input)[N]) -> StaticString< N - 1 >
 
template<StaticString Fmt, std::size_t MaxSz = 10 * 1'024, fmt::formattable... Args>
constexpr auto asmgrader::static_format (Args &&... args)
 
template<std::size_t N>
constexpr std::string_view asmgrader::format_as (const StaticString< N > &str)
 
template<StaticString String>
consteval auto asmgrader::literals::operator""_static ()
 
template<std::size_t I, std::size_t Size>
requires (I < Size)
constexpr char asmgrader::get (const ::asmgrader::StaticString< Size > &str)
 Specialization of get to play nice with algorithms that work on tuple-like types.