pineapple-notepad/3rdparty/lexilla540/lexilla/lexlib/InList.cxx

38 lines
861 B
C++
Raw Normal View History

2024-07-02 23:47:26 +08:00
// Scintilla source code edit control
/** @file InList.cxx
** Check if a string is in a list.
**/
// Copyright 2024 by Neil Hodgson <neilh@scintilla.org>
// The License.txt file describes the conditions under which this software may be distributed.
#include <cassert>
#include <string>
#include <string_view>
#include <initializer_list>
#include "InList.h"
#include "CharacterSet.h"
namespace Lexilla {
bool InList(std::string_view value, std::initializer_list<std::string_view> list) noexcept {
for (const std::string_view element : list) {
if (value == element) {
return true;
}
}
return false;
}
bool InListCaseInsensitive(std::string_view value, std::initializer_list<std::string_view> list) noexcept {
for (const std::string_view element : list) {
if (EqualCaseInsensitive(value, element)) {
return true;
}
}
return false;
}
}