mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-10 13:00:29 +03:00
LibGUI: Use CharacterTypes.h and constexpr functions in {INI,GML}Lexer
This commit is contained in:
parent
e10278402f
commit
e7b5dbe1ac
Notes:
sideshowbarker
2024-07-18 16:53:21 +09:00
Author: https://github.com/MaxWipfli Commit: https://github.com/SerenityOS/serenity/commit/e7b5dbe1acd Pull-request: https://github.com/SerenityOS/serenity/pull/7768 Issue: https://github.com/SerenityOS/serenity/issues/7349 Reviewed-by: https://github.com/alimpfard
@ -5,8 +5,8 @@
|
||||
*/
|
||||
|
||||
#include "GMLLexer.h"
|
||||
#include <AK/CharacterTypes.h>
|
||||
#include <AK/Vector.h>
|
||||
#include <ctype.h>
|
||||
|
||||
namespace GUI {
|
||||
|
||||
@ -36,19 +36,19 @@ char GMLLexer::consume()
|
||||
return ch;
|
||||
}
|
||||
|
||||
static bool is_valid_identifier_start(char ch)
|
||||
constexpr bool is_valid_identifier_start(char ch)
|
||||
{
|
||||
return isalpha(ch) || ch == '_';
|
||||
return is_ascii_alpha(ch) || ch == '_';
|
||||
}
|
||||
|
||||
static bool is_valid_identifier_character(char ch)
|
||||
constexpr bool is_valid_identifier_character(char ch)
|
||||
{
|
||||
return isalnum(ch) || ch == '_';
|
||||
return is_ascii_alphanumeric(ch) || ch == '_';
|
||||
}
|
||||
|
||||
static bool is_valid_class_character(char ch)
|
||||
constexpr bool is_valid_class_character(char ch)
|
||||
{
|
||||
return isalnum(ch) || ch == '_' || ch == ':';
|
||||
return is_ascii_alphanumeric(ch) || ch == '_' || ch == ':';
|
||||
}
|
||||
|
||||
Vector<GMLToken> GMLLexer::lex()
|
||||
@ -83,9 +83,9 @@ Vector<GMLToken> GMLLexer::lex()
|
||||
};
|
||||
|
||||
while (m_index < m_input.length()) {
|
||||
if (isspace(peek(0))) {
|
||||
if (is_ascii_space(peek(0))) {
|
||||
begin_token();
|
||||
while (isspace(peek()))
|
||||
while (is_ascii_space(peek()))
|
||||
consume();
|
||||
continue;
|
||||
}
|
||||
@ -132,7 +132,7 @@ Vector<GMLToken> GMLLexer::lex()
|
||||
consume();
|
||||
commit_token(GMLToken::Type::Colon);
|
||||
|
||||
while (isspace(peek()))
|
||||
while (is_ascii_space(peek()))
|
||||
consume();
|
||||
|
||||
if (peek(0) == '@') {
|
||||
|
@ -5,8 +5,8 @@
|
||||
*/
|
||||
|
||||
#include "INILexer.h"
|
||||
#include <AK/CharacterTypes.h>
|
||||
#include <AK/Vector.h>
|
||||
#include <ctype.h>
|
||||
|
||||
namespace GUI {
|
||||
|
||||
@ -61,16 +61,16 @@ Vector<IniToken> IniLexer::lex()
|
||||
IniToken token;
|
||||
token.m_type = type;
|
||||
token.m_start = token_start_position;
|
||||
token.m_end = m_previous_position;
|
||||
token.m_end = m_position;
|
||||
tokens.append(token);
|
||||
};
|
||||
|
||||
while (m_index < m_input.length()) {
|
||||
auto ch = peek();
|
||||
|
||||
if (isspace(ch)) {
|
||||
if (is_ascii_space(ch)) {
|
||||
begin_token();
|
||||
while (isspace(peek()))
|
||||
while (is_ascii_space(peek()))
|
||||
consume();
|
||||
commit_token(IniToken::Type::Whitespace);
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user