txlyre 19 時間 前
コミット
674767ab69
2 ファイル変更364 行追加244 行削除
  1. 334 244
      qistd.c
  2. 30 0
      std.qi

ファイルの差分が大きいため隠しています
+ 334 - 244
qistd.c


+ 30 - 0
std.qi

@@ -453,6 +453,36 @@ func __class_wrapper(n, p, t, mt, st): return Object({
         return obj
     }
 }, nil, st)
+func hex(x) {
+    if type(x) != "number"
+      throw "expected first argument to be: number, but got: " + type(x)
+    if x == 0
+      return "0x0"
+    let sgn = x < 0
+    if sgn 
+      x = -x
+    var r = ""
+    for x > 0 {
+        r = "0123456789abcdef"[x % 16] + r
+        x //= 16
+    }
+    return (sgn? "-0x": "0x") + r
+}
+func oct(x) {
+    if type(x) != "number"
+      throw "expected first argument to be: number, but got: " + type(x)
+    if x == 0
+      return "0o0"
+    let sgn = x < 0
+    if sgn 
+      x = -x
+    var r = ""
+    for x > 0 {
+        r = "01234567"[x % 8] + r
+        x //= 8
+    }
+    return (sgn? "-0o": "0o") + r
+}
 func format(s) {
   if type(s) != "string"
     throw "expected first argument to be: string, but got: " + type(s)

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません