Sha256: 51c3d7781c89b3359d23f7f9ff6f819c59f6de3df5b50ab24de47f766d109439
Contents?: true
Size: 808 Bytes
Versions: 1
Compression:
Stored size: 808 Bytes
Contents
# frozen_string_literal: false module CompactData # Handle escaping of unicode characters. module UNICODE VERTICAL_TAB = 0x0b BACKSPACE = 0x08 FORMFEED = 0x0c LINEFEED = 0x0a CARRIAGE_RETURN = 0x0d TAB = 0x09 def self.escape_char(chr) return '' unless chr if chr >= 32 && chr <= 127 '' << chr elsif chr == VERTICAL_TAB '~u000B' elsif chr == BACKSPACE '\\b' elsif chr == FORMFEED '\\f' elsif chr == LINEFEED '\\n' elsif chr == CARRIAGE_RETURN '\\r' elsif chr == TAB '\\t' else '' << chr end end def self.escape(str) result = '' str.each_codepoint do |c| result << escape_char(c) end result end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
compactdata-0.0.6 | lib/compactdata/util/unicode.rb |