summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibUnicode/UnicodeUtils.h
blob: a3f3b0cc82e6e807321e95ce292b9b0acbe44d89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*
 * Copyright (c) 2023, Tim Flynn <trflynn89@serenityos.org>
 *
 * SPDX-License-Identifier: BSD-2-Clause
 */

#pragma once

#include <AK/Error.h>
#include <AK/Forward.h>
#include <AK/Optional.h>
#include <AK/Utf32View.h>
#include <AK/Utf8View.h>
#include <LibUnicode/Forward.h>

namespace Unicode::Detail {

ErrorOr<void> build_lowercase_string(Utf8View code_points, StringBuilder& builder, Optional<StringView> const& locale);
ErrorOr<void> build_uppercase_string(Utf8View code_points, StringBuilder& builder, Optional<StringView> const& locale);
ErrorOr<void> build_titlecase_string(Utf8View code_points, StringBuilder& builder, Optional<StringView> const& locale);
ErrorOr<void> build_casefold_string(Utf8View code_points, StringBuilder& builder);
Utf32View casefold_code_point(u32 const& code_point);

}