summaryrefslogtreecommitdiff
path: root/lib/nes/common/containers/string-view.hh
diff options
context:
space:
mode:
Diffstat (limited to 'lib/nes/common/containers/string-view.hh')
-rw-r--r--lib/nes/common/containers/string-view.hh11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/nes/common/containers/string-view.hh b/lib/nes/common/containers/string-view.hh
index 9bd27ae..858a858 100644
--- a/lib/nes/common/containers/string-view.hh
+++ b/lib/nes/common/containers/string-view.hh
@@ -5,6 +5,12 @@
namespace nes
{
+ enum class case_sensitive
+ {
+ yes,
+ no,
+ };
+
/// Non-owning view into a (not necessarily null-terminated) string.
class string_view
{
@@ -30,11 +36,14 @@ namespace nes
auto get_first() const -> char;
auto get_last() const -> char;
+ auto compare(string_view, case_sensitive = case_sensitive::yes) const -> bool;
auto contains(char) const -> bool;
auto substring(u32 first) const -> string_view;
auto substring(u32 first, u32 length) const -> string_view;
+ auto has_prefix(string_view, case_sensitive = case_sensitive::yes) const -> bool;
+ auto has_suffix(string_view, case_sensitive = case_sensitive::yes) const -> bool;
};
auto operator==(string_view, string_view) -> bool;
auto operator!=(string_view, string_view) -> bool;
-} // namespace nes \ No newline at end of file
+} // namespace nes