// Copyright (c) Six Labors. // Licensed under the Six Labors Split License. using System; namespace SixLabors.Fonts.Unicode { /// /// Flags describing properties of a Unicode grapheme cluster. /// [Flags] public enum GraphemeClusterFlags : byte { /// /// No flags. /// None = 0, /// /// At least one scalar in the cluster resolved to two terminal cells before /// any whole-cluster emoji override was applied. /// ContainsWide = 1 << 0, /// /// At least one scalar in the cluster has East Asian Width Ambiguous. /// ContainsAmbiguous = 1 << 1, /// /// All scalars in the cluster are zero-width for terminal measurement. /// AllZeroWidth = 1 << 2, /// /// The cluster contains a C0 or C1 control scalar. /// ContainsControl = 1 << 3, /// /// The cluster contains an emoji-like scalar or sequence. /// ContainsEmoji = 1 << 4, /// /// The cluster contains a zero-width joiner sequence. /// ContainsZwjSequence = 1 << 5, /// /// The cluster contains a variation selector. /// ContainsVariationSelector = 1 << 6, /// /// The cluster contains exactly one code point. /// IsSingleCodePoint = 1 << 7 } }