emoji: adding a helper to parse a hex string into codepoint

Signed-off-by: Vincent Batts <vbatts@hashbangbash.com>
This commit is contained in:
Vincent Batts 2018-10-22 15:19:50 +01:00
parent 4ef81bbc82
commit f0d758ab5f
Signed by: vbatts
GPG Key ID: 10937E57733F1362
1 changed files with 22 additions and 0 deletions

View File

@ -1,6 +1,7 @@
package emoji
import (
"encoding/hex"
"fmt"
"strconv"
"strings"
@ -72,3 +73,24 @@ func CodepointToUnicode(word string) string {
}
return ret
}
// FromHexString parses string s as two character byte of hexadecimal into
// Unicode Codepoint
func FromHexString(s string) (string, error) {
d, err := hex.DecodeString(s)
if err != nil {
return "", err
}
var ret string
for _, b := range d {
for _, e := range Map(b) {
// use the first colon notation word and continue
if IsCodepoint(e) {
ret = ret + CodepointToUnicode(e)
break
}
}
}
return ret, nil
}