Documentation
¶
Index ¶
Constants ¶
const (
InvalidUnicodeValue = rune(0x7fffffff)
)
Variables ¶
This section is empty.
Functions ¶
func StringFromChars ¶
func StringFromChars(i CharIterator) string
FromChars converts an array of Char objects back to a string, filtering out sentinel characters.
Types ¶
type ChainedTransliterator ¶
type ChainedTransliterator struct {
// contains filtered or unexported fields
}
ChainedTransliterator applies multiple transliterators in sequence
func NewChainedTransliterator ¶
func NewChainedTransliterator(transliterators []Transliterator) *ChainedTransliterator
NewChainedTransliterator creates a new chained transliterator
func (*ChainedTransliterator) Transliterate ¶
func (ct *ChainedTransliterator) Transliterate(input CharIterator) (CharIterator, error)
Transliterate applies all transliterators in sequence
type Char ¶
type Char struct {
// C is the character string (may be multiple Unicode code points).
C [2]rune
// Offset is the byte offset in the original string.
Offset int
// Source is the original character this was derived from (for tracking transformations).
Source *Char
}
Char represents a character with metadata for transliteration.
func BuildCharArray ¶
BuildCharArray converts a text string into an array of Char objects, properly handling Ideographic Variation Sequences (IVS) and Standardized Variation Sequences (SVS).
func (*Char) IsSentinel ¶
IsSentinel returns true if this is a sentinel character (empty string).
func (*Char) IsTransliterated ¶
IsTransliterated returns true if this character has been transliterated.
func (*Char) WithOffset ¶
type CharIterator ¶
type CharIterator interface {
// Next returns the next character or nil if no more characters
Next() *Char
// Count returns the number of characters in the iterator if known, or -1 if unknown
Count() int
}
CharIterator provides iteration over Char slices
func NewCharIteratorFromSlice ¶
func NewCharIteratorFromSlice(chars []*Char) CharIterator
NewCharIteratorFromSlice creates a new iterator from a slice of Chars
type Transliterator ¶
type Transliterator interface {
Transliterate(input CharIterator) (CharIterator, error)
}
Transliterator is the interface for character transformation
type TransliteratorFunc ¶
type TransliteratorFunc func(input CharIterator) (CharIterator, error)
TransliteratorFunc is a function type that implements Transliterator
func (TransliteratorFunc) Transliterate ¶
func (f TransliteratorFunc) Transliterate(input CharIterator) (CharIterator, error)
Transliterate implements the Transliterator interface
Directories
¶
| Path | Synopsis |
|---|---|
|
internal
|
|
|
codegen
command
|
|
|
transliterators
|
|
|
archaic_hirakatas
Code generated by codegen.
|
Code generated by codegen. |
|
circled_or_squared
Code generated by codegen.
|
Code generated by codegen. |
|
combined
Code generated by codegen.
|
Code generated by codegen. |
|
hyphens
Code generated by codegen.
|
Code generated by codegen. |
|
ideographic_annotations
Code generated by codegen.
|
Code generated by codegen. |
|
ivs_svs_base
Code generated by codegen.
|
Code generated by codegen. |
|
kanji_old_new
Code generated by codegen.
|
Code generated by codegen. |
|
mathematical_alphanumerics
Code generated by codegen.
|
Code generated by codegen. |
|
radicals
Code generated by codegen.
|
Code generated by codegen. |
|
roman_numerals
Code generated by codegen.
|
Code generated by codegen. |
|
small_hirakatas
Code generated by codegen.
|
Code generated by codegen. |
|
spaces
Code generated by codegen.
|
Code generated by codegen. |