method
decompose_codepoints
rails latest stable - Class:
ActiveSupport::Multibyte::Handlers::UTF8Handler
Method deprecated or moved
This method is deprecated or moved on the latest stable version. The last existing version (v2.1.0) is shown here.
decompose_codepoints(type, codepoints)protected
Decompose composed characters to the decomposed form
# File activesupport/lib/active_support/multibyte/handlers/utf8_handler.rb, line 482
def decompose_codepoints(type, codepoints)
codepoints.inject([]) do |decomposed, cp|
# if it's a hangul syllable starter character
if HANGUL_SBASE <= cp and cp < HANGUL_SLAST
sindex = cp - HANGUL_SBASE
ncp = [] # new codepoints
ncp << HANGUL_LBASE + sindex / HANGUL_NCOUNT
ncp << HANGUL_VBASE + (sindex % HANGUL_NCOUNT) / HANGUL_TCOUNT
tindex = sindex % HANGUL_TCOUNT
ncp << (HANGUL_TBASE + tindex) unless tindex == 0
decomposed.concat ncp
# if the codepoint is decomposable in with the current decomposition type
elsif (ncp = UCD[cp].decomp_mapping) and (!UCD[cp].decomp_type || type == :compatability)
decomposed.concat decompose_codepoints(type, ncp.dup)
else
decomposed << cp
end
end
end Related methods
- Class methods
- []=
- capitalize
- center
- codepoints_to_pattern
- compose
- consumes?
- decompose
- downcase
- g_length
- index
- insert
- ljust
- lstrip
- normalize
- reverse
- rjust
- rstrip
- size
- slice
- strip
- tidy_bytes
- translate_offset
- upcase
- Protected methods
-
compose_codepoints -
decompose_codepoints -
g_pack -
g_unpack -
in_char_class? -
justify -
padding -
reorder_characters -
to_case -
u_unpack