class Characteristics
Constants
- UNICODE_VERSION
- VERSION
Attributes
encoding[R]
Public Class Methods
create(char)
click to toggle source
# File lib/characteristics.rb, line 39 def self.create(char) create_for_type(char, type_from_encoding_name(char.encoding.name)) end
create_for_type(char, type)
click to toggle source
# File lib/characteristics.rb, line 26 def self.create_for_type(char, type) case type when :unicode UnicodeCharacteristics.new(char) when :byte ByteCharacteristics.new(char) when :ascii AsciiCharacteristics.new(char) else BinaryCharacteristics.new(char) end end
new(char)
click to toggle source
# File lib/characteristics.rb, line 45 def initialize(char) raise ArgumentError, "Do not use abstract Characteristics.new(char) directly, please use Characteristics.create(char)" if self.class == Characteristics @is_valid = char.valid_encoding? @encoding = char.encoding @encoding_name = @encoding.name end
type_from_encoding_name(encoding_name)
click to toggle source
# File lib/characteristics.rb, line 11 def self.type_from_encoding_name(encoding_name) case encoding_name when "US-ASCII", "GB1988" :ascii when "ASCII-8BIT" :binary when /^UTF-?/ :unicode when /^ISO-8859-/, /^Windows-125/, /^(IBM|CP85)/, /^mac/, 'TIS-620', 'Windows-874', /^KOI8-/ :byte else raise ArgumentError, "encoding <#{encoding_name}> not supported" end end
Public Instance Methods
assigned?()
click to toggle source
# File lib/characteristics.rb, line 60 def assigned? end
bidi_control?()
click to toggle source
# File lib/characteristics.rb, line 81 def bidi_control? end
blank?()
click to toggle source
# File lib/characteristics.rb, line 75 def blank? end
c0?()
click to toggle source
# File lib/characteristics.rb, line 66 def c0? end
c1?()
click to toggle source
# File lib/characteristics.rb, line 72 def c1? end
control?()
click to toggle source
# File lib/characteristics.rb, line 63 def control? end
delete?()
click to toggle source
# File lib/characteristics.rb, line 69 def delete? end
docomo?()
click to toggle source
private use emojis
# File lib/characteristics.rb, line 93 def docomo? end
format?()
click to toggle source
# File lib/characteristics.rb, line 78 def format? end
kddi?()
click to toggle source
private use emojis
# File lib/characteristics.rb, line 85 def kddi? end
softbank?()
click to toggle source
private use emojis
# File lib/characteristics.rb, line 89 def softbank? end
unicode?()
click to toggle source
# File lib/characteristics.rb, line 57 def unicode? end
valid?()
click to toggle source
# File lib/characteristics.rb, line 53 def valid? @is_valid end
Private Instance Methods
encoding_has_c0?()
click to toggle source
# File lib/characteristics.rb, line 110 def encoding_has_c0? true end
encoding_has_c1?()
click to toggle source
# File lib/characteristics.rb, line 118 def encoding_has_c1? false end
encoding_has_delete?()
click to toggle source
# File lib/characteristics.rb, line 114 def encoding_has_delete? true end
encoding_has_docomo?()
click to toggle source
# File lib/characteristics.rb, line 106 def encoding_has_docomo? @encoding_name.end_with? "DoCoMo" end
encoding_has_kddi?()
click to toggle source
# File lib/characteristics.rb, line 98 def encoding_has_kddi? @encoding_name.end_with? "KDDI" end
encoding_has_softbank?()
click to toggle source
# File lib/characteristics.rb, line 102 def encoding_has_softbank? @encoding_name.end_with? "SoftBank" end