add to_num & to_char in std.string

This commit is contained in:
ValKmjolnir
2023-11-18 00:12:05 +08:00
parent 514a7201cd
commit 35086819ea
3 changed files with 35 additions and 12 deletions
-1
View File
@@ -1,7 +1,6 @@
# lib.nas
# 2019 ValKmjolnir
use std.math;
use std.string;
use std.io;
use std.os;
use std.unix;
+30 -1
View File
@@ -9,4 +9,33 @@ var join = func(sep, vec) {
res ~= (i==len-1? "":sep);
}
return res;
}
}
var __temp_char = func(number) {
return __char(number);
}
var __temp_append = func(vec, elem...) {
return __append(vec, elem);
}
var __temp_contains = func(hash, key) {
return __contains(hash, key);
}
var __num_to_char = [];
var __char_to_num = {};
func() {
for(var i = 0; i<256; i += 1) {
__temp_append(__num_to_char, __temp_char(i));
__char_to_num[__temp_char(i)] = i;
}
}();
var to_char = func(number) {
return 0<=number and number<256? __num_to_char[number]:"";
}
var to_num = func(character) {
return __temp_contains(__char_to_num, character)? __char_to_num[character]:-1;
}