Structure

Unicode.CanonicalCombiningClass

The classification of a scalar used in the Canonical Ordering Algorithm defined by the Unicode Standard. 「Unicode標準」によって定義される「正準順序アルゴリズム」において使われるあるスカラーのクラス分け。

Declaration 宣言

struct CanonicalCombiningClass

Overview 概要

Canonical combining classes are used by the ordering algorithm to determine if two sequences of combining marks should be considered canonically equivalent (that is, identical in interpretation). Two sequences are canonically equivalent if they are equal when sorting the scalars in ascending order by their combining class. 正準結合クラスは、順序アルゴリズムによって使われて、2つの結合記号シーケンスが正準的に等しい(すなわち、解釈において同一)と考えられるべきかを決定します。2つのシーケンスは、スカラーをそれらの結合クラスによって昇順でソートする場合にそれらが等しいならば、正準的に等しいです。

For example, consider the sequence "\u{0041}\u{0301}\u{0316}" (LATIN CAPITAL LETTER A, COMBINING ACUTE ACCENT, COMBINING GRAVE ACCENT BELOW). The combining classes of these scalars have the numeric values 0, 230, and 220, respectively. Sorting these scalars by their combining classes yields "\u{0041}\u{0316}\u{0301}", so two strings that differ only by the ordering of those scalars would compare as equal: 例えば、このシーケンス"\u{0041}\u{0301}\u{0316}" (LATIN CAPITAL LETTER A, COMBINING ACUTE ACCENT, COMBINING GRAVE ACCENT BELOW) を考えてみてください。これらのスカラーの結合クラスは、数値 0、230、そして220をそれぞれ持ちます。これらのスカラーをそれらの結合クラスによってソートすることは、"\u{0041}\u{0316}\u{0301}"を生み出します、それでこれらのスカラーの順番によってのみ異なる2つの文字列は等しいと比較されます:


let aboveBeforeBelow = "\u{0041}\u{0301}\u{0316}"
let belowBeforeAbove = "\u{0041}\u{0316}\u{0301}"
print(aboveBeforeBelow == belowBeforeAbove)
// Prints "true"

Named and Unnamed Combining Classes 名前付きおよび名無しの結合クラス

Canonical combining classes are defined in the Unicode Standard as integers in the range 0...254. For convenience, the standard assigns symbolic names to a subset of these combining classes. 正準結合クラスは、「ユニコード標準」において整数として範囲0...254の中で定義されます。利便性のため、この標準は象徴名をそれら結合クラスのサブセットに割り当てます。

The CanonicalCombiningClass type conforms to RawRepresentable with a raw value of type UInt8. You can create instances of the type by using the static members named after the symbolic names, or by using the init(rawValue:) initializer. CanonicalCombiningClass型は、RawRepresentableに型UInt8の生の値で準拠します。あなたは、この型のインスタンスを、それら象徴名を付けられた静的メンバーを使うことによってまたはinit(rawValue:)イニシャライザを使うことによって作成できます。


let overlayClass = Unicode.CanonicalCombiningClass(rawValue: 1)
let overlayClassIsOverlay = overlayClass == .overlay
// overlayClassIsOverlay == true

Topics 話題

Type Aliases 型エイリアス

Initializers イニシャライザ

Instance Properties 様々なインスタンスプロパティ

Type Properties 型プロパティ

Instance Methods インスタンスメソッド

Operator Functions 演算子関数

Relationships 関係

Conforms To 次に準拠

See Also 参照

Unicode Scalar Classifications ユニコードスカラークラス分け