Method: Unisec::Size#display

Defined in:
lib/unisec/size.rb

#displayObject

Display a CLI-friendly output summurizing the size information about a Unicode string.

Examples:

Unisec::Size.new('👩‍❤️‍👨').display
# =>
# Code point(s):   6
# Grapheme(s):     1
# UTF-8 byte(s):   20
# UTF-16 byte(s):  16
# UTF-32 byte(s):  24
# UTF-8 unit(s):   20
# UTF-16 unit(s):  8
# UTF-32 unit(s):  6


159
160
161
162
163
164
165
166
167
168
169
# File 'lib/unisec/size.rb', line 159

def display
  display = ->(key, value) { puts Paint[key, :red, :bold].ljust(27) + " #{value}" }
  display.call('Code point(s):', @code_points_size)
  display.call('Grapheme(s):', @grapheme_size)
  display.call('UTF-8 byte(s):', @utf8_bytesize)
  display.call('UTF-16 byte(s):', @utf16_bytesize)
  display.call('UTF-32 byte(s):', @utf32_bytesize)
  display.call('UTF-8 unit(s):', @utf8_unitsize)
  display.call('UTF-16 unit(s):', @utf16_unitsize)
  display.call('UTF-32 unit(s):', @utf32_unitsize)
end