UnicodeUtils.h 878 B

123456789101112131415161718192021222324
  1. /*
  2. * Copyright (c) 2023, Tim Flynn <trflynn89@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <AK/Error.h>
  8. #include <AK/Forward.h>
  9. #include <AK/Optional.h>
  10. #include <AK/Utf32View.h>
  11. #include <AK/Utf8View.h>
  12. #include <LibUnicode/Forward.h>
  13. namespace Unicode::Detail {
  14. ErrorOr<void> build_lowercase_string(Utf8View code_points, StringBuilder& builder, Optional<StringView> const& locale);
  15. ErrorOr<void> build_uppercase_string(Utf8View code_points, StringBuilder& builder, Optional<StringView> const& locale);
  16. ErrorOr<void> build_titlecase_string(Utf8View code_points, StringBuilder& builder, Optional<StringView> const& locale, TrailingCodePointTransformation trailing_code_point_transformation);
  17. ErrorOr<void> build_casefold_string(Utf8View code_points, StringBuilder& builder);
  18. Utf32View casefold_code_point(u32 const& code_point);
  19. }