| Class | UnicodePlugin::UnicodeFilter |
| In: |
lib/rbot/core/unicode.rb
|
| Parent: | Object |
# File lib/rbot/core/unicode.rb, line 31
31: def initialize(oenc, *iencs)
32: o = oenc.dup
33: o += '//ignore' if !o.include?('/')
34: i = iencs[0].dup
35: # i += '//ignore' if !i.include?('/')
36: @iencs = iencs.dup
37: @iconvs = @iencs.map { |_| Iconv.new('utf-8', _) }
38: debug "*** o = #{o}, i = #{i}, iencs = #{iencs.inspect}"
39: @default_in = Iconv.new('utf-8//ignore', i)
40: @default_out = Iconv.new(o, 'utf-8//ignore')
41: end
# File lib/rbot/core/unicode.rb, line 43
43: def in(data)
44: rv = nil
45: @iconvs.each_with_index { |ic, idx|
46: begin
47: debug "trying #{@iencs[idx]}"
48: rv = ic.iconv(data)
49: break
50: rescue
51: end
52: }
53:
54: rv = @default_in.iconv(data) if !rv
55: debug ">> #{rv.inspect}"
56: return rv
57: end