github.com/shogo82148/std@v1.22.1-0.20240327122250-4e474527810c/unicode/utf16/utf16.go (about)

     1  // Copyright 2010 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Package utf16はUTF-16シーケンスのエンコードとデコードを実装します。
     6  package utf16
     7  
     8  // IsSurrogateは指定されたUnicodeコードポイントが
     9  // 代理ペアに現れることができるかどうかを報告します。
    10  func IsSurrogate(r rune) bool
    11  
    12  // DecodeRune はサロゲートペアのUTF-16デコードを返します。
    13  // サロゲートペアが正しいUTF-16のサロゲートペアでない場合、
    14  // DecodeRune はUnicodeの代替コードポイントU+FFFDを返します。
    15  func DecodeRune(r1, r2 rune) rune
    16  
    17  // EncodeRuneは与えられたルーンに対して、UTF-16サロゲートペアのr1、r2を返します。
    18  // もしルーンが有効なUnicodeコードポイントでない場合やエンコーディングが必要ではない場合、
    19  // EncodeRuneはU+FFFD、U+FFFDを返します。
    20  func EncodeRune(r rune) (r1, r2 rune)
    21  
    22  // RuneLenは、ルーンのUTF-16エンコーディングに含まれる16ビットワードの数を返します。
    23  // ルーンがUTF-16でエンコードするための有効な値でない場合、-1を返します。
    24  func RuneLen(r rune) int
    25  
    26  // EncodeはUnicodeコードポイントの列sのUTF-16エンコーディングを返します。
    27  func Encode(s []rune) []uint16
    28  
    29  // AppendRuneはUnicodeのコードポイントrのUTF-16エンコーディングを
    30  // pの末尾に追加し、拡張されたバッファを返します。コードポイントが有効な
    31  // Unicodeのコードポイントでない場合、U+FFFDのエンコーディングを追加します。
    32  func AppendRune(a []uint16, r rune) []uint16
    33  
    34  // DecodeはUTF-16エンコーディングsで表されるUnicodeのコードポイントのシーケンスを返します。
    35  func Decode(s []uint16) []rune