Mercurial > prosody-hg
comparison util/hex.lua @ 6802:442019e955dc
util.hex: Normalize hex to lowercase and discard non-hex input
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Wed, 26 Aug 2015 14:32:20 +0200 |
| parents | ec566d7cd518 |
| children | a0ff5c438e9d |
comparison
equal
deleted
inserted
replaced
| 6798:8b4c8e957211 | 6802:442019e955dc |
|---|---|
| 1 local s_char = string.char; | 1 local s_char = string.char; |
| 2 local s_format = string.format; | 2 local s_format = string.format; |
| 3 local s_gsub = string.gsub; | 3 local s_gsub = string.gsub; |
| 4 local s_lower = string.lower; | |
| 4 | 5 |
| 5 local char_to_hex = {}; | 6 local char_to_hex = {}; |
| 6 local hex_to_char = {}; | 7 local hex_to_char = {}; |
| 7 | 8 |
| 8 do | 9 do |
| 17 local function to(s) | 18 local function to(s) |
| 18 return (s_gsub(s, ".", char_to_hex)); | 19 return (s_gsub(s, ".", char_to_hex)); |
| 19 end | 20 end |
| 20 | 21 |
| 21 local function from(s) | 22 local function from(s) |
| 22 return (s_gsub(s, "..", hex_to_char)); | 23 return (s_gsub(s_lower(s), "%X*(%x%x)%X*", hex_to_char)); |
| 23 end | 24 end |
| 24 | 25 |
| 25 return { to = to, from = from } | 26 return { to = to, from = from } |
