BAN: Implement find() for StringView
This commit is contained in:
parent
f371fabe35
commit
2e77718f07
|
@ -145,6 +145,22 @@ namespace BAN
|
||||||
return m_data[0];
|
return m_data[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BAN::Optional<StringView::size_type> StringView::find(char ch) const
|
||||||
|
{
|
||||||
|
for (size_type i = 0; i < m_size; i++)
|
||||||
|
if (m_data[i] == ch)
|
||||||
|
return i;
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
|
BAN::Optional<StringView::size_type> StringView::find(bool(*comp)(char)) const
|
||||||
|
{
|
||||||
|
for (size_type i = 0; i < m_size; i++)
|
||||||
|
if (comp(m_data[i]))
|
||||||
|
return i;
|
||||||
|
return {};
|
||||||
|
}
|
||||||
|
|
||||||
bool StringView::contains(char ch) const
|
bool StringView::contains(char ch) const
|
||||||
{
|
{
|
||||||
for (size_type i = 0; i < m_size; i++)
|
for (size_type i = 0; i < m_size; i++)
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <BAN/ForwardList.h>
|
|
||||||
#include <BAN/Formatter.h>
|
#include <BAN/Formatter.h>
|
||||||
|
#include <BAN/ForwardList.h>
|
||||||
#include <BAN/Iterators.h>
|
#include <BAN/Iterators.h>
|
||||||
|
#include <BAN/Optional.h>
|
||||||
|
|
||||||
namespace BAN
|
namespace BAN
|
||||||
{
|
{
|
||||||
|
@ -35,6 +36,9 @@ namespace BAN
|
||||||
char back() const;
|
char back() const;
|
||||||
char front() const;
|
char front() const;
|
||||||
|
|
||||||
|
BAN::Optional<size_type> find(char) const;
|
||||||
|
BAN::Optional<size_type> find(bool(*comp)(char)) const;
|
||||||
|
|
||||||
bool contains(char) const;
|
bool contains(char) const;
|
||||||
size_type count(char) const;
|
size_type count(char) const;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue