goscript 0.0.42 → 0.0.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/compiler/analysis.go +87 -0
  2. package/compiler/assignment.go +6 -0
  3. package/compiler/compiler.go +85 -5
  4. package/compiler/composite-lit.go +17 -0
  5. package/compiler/decl.go +42 -20
  6. package/compiler/expr-call.go +37 -1
  7. package/compiler/expr-type.go +20 -0
  8. package/compiler/lit.go +4 -20
  9. package/compiler/spec-struct.go +3 -4
  10. package/compiler/spec-value.go +18 -1
  11. package/compiler/spec.go +15 -8
  12. package/compiler/stmt-range.go +1 -1
  13. package/compiler/type-assert.go +4 -4
  14. package/compiler/type.go +63 -5
  15. package/dist/gs/builtin/map.d.ts +4 -4
  16. package/dist/gs/builtin/map.js +6 -3
  17. package/dist/gs/builtin/map.js.map +1 -1
  18. package/dist/gs/builtin/slice.d.ts +7 -0
  19. package/dist/gs/builtin/slice.js +12 -0
  20. package/dist/gs/builtin/slice.js.map +1 -1
  21. package/dist/gs/builtin/type.js +8 -85
  22. package/dist/gs/builtin/type.js.map +1 -1
  23. package/dist/gs/fmt/fmt.d.ts +22 -21
  24. package/dist/gs/fmt/fmt.js +12 -12
  25. package/dist/gs/fmt/fmt.js.map +1 -1
  26. package/dist/gs/fmt/index.d.ts +2 -1
  27. package/dist/gs/fmt/index.js.map +1 -1
  28. package/dist/gs/internal/testlog/index.d.ts +1 -0
  29. package/dist/gs/internal/testlog/index.js +5 -0
  30. package/dist/gs/internal/testlog/index.js.map +1 -0
  31. package/dist/gs/io/io.d.ts +13 -13
  32. package/dist/gs/io/io.js +31 -21
  33. package/dist/gs/io/io.js.map +1 -1
  34. package/dist/gs/maps/iter.gs.d.ts +7 -0
  35. package/dist/gs/maps/iter.gs.js +65 -0
  36. package/dist/gs/maps/iter.gs.js.map +1 -0
  37. package/dist/gs/maps/maps.gs.d.ts +7 -0
  38. package/dist/gs/maps/maps.gs.js +79 -0
  39. package/dist/gs/maps/maps.gs.js.map +1 -0
  40. package/dist/gs/os/error.gs.d.ts +1 -1
  41. package/dist/gs/os/error.gs.js +1 -1
  42. package/dist/gs/os/error.gs.js.map +1 -1
  43. package/dist/gs/path/filepath/match.d.ts +4 -3
  44. package/dist/gs/path/filepath/match.js +2 -2
  45. package/dist/gs/path/filepath/match.js.map +1 -1
  46. package/dist/gs/path/filepath/path.d.ts +2 -2
  47. package/dist/gs/path/filepath/path.js +3 -3
  48. package/dist/gs/path/filepath/path.js.map +1 -1
  49. package/dist/gs/reflect/abi.d.ts +59 -0
  50. package/dist/gs/reflect/abi.gs.d.ts +59 -0
  51. package/dist/gs/reflect/abi.gs.js +79 -0
  52. package/dist/gs/reflect/abi.gs.js.map +1 -0
  53. package/dist/gs/reflect/abi.js +79 -0
  54. package/dist/gs/reflect/abi.js.map +1 -0
  55. package/dist/gs/reflect/badlinkname.d.ts +52 -0
  56. package/dist/gs/reflect/badlinkname.gs.d.ts +52 -0
  57. package/dist/gs/reflect/badlinkname.gs.js +72 -0
  58. package/dist/gs/reflect/badlinkname.gs.js.map +1 -0
  59. package/dist/gs/reflect/badlinkname.js +72 -0
  60. package/dist/gs/reflect/badlinkname.js.map +1 -0
  61. package/dist/gs/reflect/deepequal.gs.d.ts +25 -0
  62. package/dist/gs/reflect/deepequal.gs.js +308 -0
  63. package/dist/gs/reflect/deepequal.gs.js.map +1 -0
  64. package/dist/gs/reflect/float32reg_generic.gs.d.ts +2 -0
  65. package/dist/gs/reflect/float32reg_generic.gs.js +10 -0
  66. package/dist/gs/reflect/float32reg_generic.gs.js.map +1 -0
  67. package/dist/gs/reflect/index.gs.d.ts +1 -0
  68. package/dist/gs/reflect/index.gs.js +3 -0
  69. package/dist/gs/reflect/index.gs.js.map +1 -0
  70. package/dist/gs/reflect/iter.gs.d.ts +3 -0
  71. package/dist/gs/reflect/iter.gs.js +24 -0
  72. package/dist/gs/reflect/iter.gs.js.map +1 -0
  73. package/dist/gs/reflect/makefunc.gs.d.ts +34 -0
  74. package/dist/gs/reflect/makefunc.gs.js +288 -0
  75. package/dist/gs/reflect/makefunc.gs.js.map +1 -0
  76. package/dist/gs/reflect/map_swiss.gs.d.ts +14 -0
  77. package/dist/gs/reflect/map_swiss.gs.js +70 -0
  78. package/dist/gs/reflect/map_swiss.gs.js.map +1 -0
  79. package/dist/gs/reflect/reflect.gs.d.ts +132 -0
  80. package/dist/gs/reflect/reflect.gs.js +437 -0
  81. package/dist/gs/reflect/reflect.gs.js.map +1 -0
  82. package/dist/gs/reflect/swapper.gs.d.ts +1 -0
  83. package/dist/gs/reflect/swapper.gs.js +32 -0
  84. package/dist/gs/reflect/swapper.gs.js.map +1 -0
  85. package/dist/gs/reflect/type.gs.d.ts +4 -0
  86. package/dist/gs/reflect/type.gs.js +21 -0
  87. package/dist/gs/reflect/type.gs.js.map +1 -0
  88. package/dist/gs/reflect/value.gs.d.ts +4 -0
  89. package/dist/gs/reflect/value.gs.js +12 -0
  90. package/dist/gs/reflect/value.gs.js.map +1 -0
  91. package/dist/gs/reflect/visiblefields.gs.d.ts +3 -0
  92. package/dist/gs/reflect/visiblefields.gs.js +123 -0
  93. package/dist/gs/reflect/visiblefields.gs.js.map +1 -0
  94. package/dist/gs/strings/reader.d.ts +1 -1
  95. package/dist/gs/strings/reader.js.map +1 -1
  96. package/dist/gs/stringslite/index.d.ts +1 -0
  97. package/dist/gs/stringslite/index.js +2 -0
  98. package/dist/gs/stringslite/index.js.map +1 -0
  99. package/dist/gs/stringslite/strings.d.ts +11 -0
  100. package/dist/gs/stringslite/strings.js +67 -0
  101. package/dist/gs/stringslite/strings.js.map +1 -0
  102. package/dist/gs/time/time.d.ts +69 -0
  103. package/dist/gs/time/time.js +350 -0
  104. package/dist/gs/time/time.js.map +1 -1
  105. package/gs/builtin/map.ts +12 -8
  106. package/gs/builtin/slice.ts +13 -0
  107. package/gs/builtin/type.ts +8 -116
  108. package/gs/fmt/fmt.ts +33 -33
  109. package/gs/fmt/index.ts +4 -0
  110. package/gs/io/io.ts +47 -39
  111. package/gs/os/error.gs.ts +1 -1
  112. package/gs/path/filepath/match.ts +4 -4
  113. package/gs/path/filepath/path.ts +3 -3
  114. package/gs/strings/reader.ts +1 -1
  115. package/gs/time/time.ts +403 -0
  116. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visiblefields.gs.js","sourceRoot":"","sources":["../../../gs/reflect/visiblefields.gs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,8BAA8B,CAAC;AAGlD,qEAAqE;AACrE,gEAAgE;AAChE,uEAAuE;AACvE,qEAAqE;AACrE,qEAAqE;AACrE,wCAAwC;AACxC,EAAE;AACF,oEAAoE;AACpE,gFAAgF;AAChF,MAAM,UAAU,aAAa,CAAC,CAAO;IACpC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QACf,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;IACvC,CAAC;IACD,IAAI,CAAE,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QAC/B,CAAC,CAAC,KAAK,CAAC,2CAA2C,GAAG,CAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,CAAC,GAAG,IAAI,mBAAmB,CAAC,EAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAkB,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAc,CAAC,EAAE,CAAE,CAAC,QAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,CAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAiB,EAAC,CAAC,CAAA;IAC7M,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACT,+CAA+C;IAC/C,iDAAiD;IACjD,mDAAmD;IACnD,IAAI,CAAC,GAAG,CAAC,CAAA;IAET,+CAA+C;IAC/C,kCAAkC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,CAAC;YACA,IAAI,CAAC,GAAG,CAAC,CAAC,MAAO,CAAC,CAAC,CAAC,CAAA;YACpB,IAAI,CAAE,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;gBACnB,SAAQ;YACT,CAAC;YAED,+CAA+C;YAC/C,kCAAkC;YAClC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACZ,+CAA+C;gBAC/C,kCAAkC;gBAClC,CAAC,CAAC,MAAO,CAAC,CAAC,CAAC,GAAG,CAAE,CAAC,KAAK,EAAE,CAAA;YAC1B,CAAC;YACD,CAAC,EAAE,CAAA;QACJ,CAAC;IACF,CAAC;IACD,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,mBAAmB;IACxB,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAA;IACjC,CAAC;IACD,IAAW,MAAM,CAAC,KAA0B;QAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;IAClC,CAAC;IAED,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAA;IACnC,CAAC;IACD,IAAW,QAAQ,CAAC,KAAyB;QAC5C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAA;IACpC,CAAC;IAED,IAAW,MAAM;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAA;IACjC,CAAC;IACD,IAAW,MAAM,CAAC,KAA2B;QAC5C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;IAClC,CAAC;IAED,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAA;IAChC,CAAC;IACD,IAAW,KAAK,CAAC,KAAsB;QACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;IACjC,CAAC;IAEM,OAAO,CAKb;IAED,YAAY,IAAqI;QAChJ,IAAI,CAAC,OAAO,GAAG;YACd,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,OAAO,EAAkB,CAAC;YAC7D,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAiB,CAAC;YAChE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,SAAS,CAAc,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,SAAS,CAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;SACnE,CAAA;IACF,CAAC;IAEM,KAAK;QACX,MAAM,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAA;QACxC,MAAM,CAAC,OAAO,GAAG;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;SACzC,CAAA;QACD,OAAO,MAAM,CAAA;IACd,CAAC;IAED,2DAA2D;IAC3D,0DAA0D;IAC1D,0CAA0C;IAC1C,8CAA8C;IAC9C,sBAAsB;IACf,IAAI,CAAC,CAAO;QAClB,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,OAAM;QACP,CAAC;QACD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAE,CAAC,QAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,GAAG,CAAE,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;YAC5B,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAa,CAAA;YAC7C,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;gBACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;gBACd,IAAI,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;oBACpC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAK,CAAC,IAAK,EAAE,CAAA;oBAChC,IAAI,QAAQ,EAAE,CAAC;wBACd,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAA;oBAClB,CAAC;gBACF,CAAC;gBACD,IAAI,CAAC,CAAC,IAAK,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;oBACpC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACf,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;YACjC,CAAC;QACF,CAAC;QACD,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;IAChC,CAAC;IAED,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,kBAAkB,CACtC,qBAAqB,EACrB,IAAI,mBAAmB,EAAE,EACzB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EACpE,mBAAmB,EACnB,EAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAC,CACxZ,CAAC"}
@@ -20,7 +20,7 @@ export declare class Reader {
20
20
  clone(): Reader;
21
21
  Len(): number;
22
22
  Size(): number;
23
- Read(b: Uint8Array): [number, $.GoError];
23
+ Read(b: $.Bytes): [number, $.GoError];
24
24
  ReadAt(b: Uint8Array, off: number): [number, $.GoError];
25
25
  ReadByte(): [number, $.GoError];
26
26
  UnreadByte(): $.GoError;
@@ -1 +1 @@
1
- {"version":3,"file":"reader.js","sourceRoot":"","sources":["../../../gs/strings/reader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reader.js","sourceRoot":"","sources":["../../../gs/strings/reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './strings';
@@ -0,0 +1,2 @@
1
+ export * from './strings';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../gs/stringslite/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA"}
@@ -0,0 +1,11 @@
1
+ export declare function HasPrefix(s: string, prefix: string): boolean;
2
+ export declare function HasSuffix(s: string, suffix: string): boolean;
3
+ export declare function IndexByte(s: string, c: number): number;
4
+ export declare function Index(s: string, substr: string): number;
5
+ export declare function Cut(s: string, sep: string): [string, string, boolean];
6
+ export declare function CutPrefix(s: string, prefix: string): [string, boolean];
7
+ export declare function CutSuffix(s: string, suffix: string): [string, boolean];
8
+ export declare function TrimPrefix(s: string, prefix: string): string;
9
+ export declare function TrimSuffix(s: string, suffix: string): string;
10
+ export declare function Clone(s: string): string;
11
+ export declare function CopyBytes(b: Uint8Array, s: string): number;
@@ -0,0 +1,67 @@
1
+ import * as $ from '@goscript/builtin/builtin.js';
2
+ import * as unsafe from '@goscript/unsafe/index.js';
3
+ export function HasPrefix(s, prefix) {
4
+ return ($.len(s) >= $.len(prefix) &&
5
+ $.sliceString(s, undefined, $.len(prefix)) == prefix);
6
+ }
7
+ export function HasSuffix(s, suffix) {
8
+ return ($.len(s) >= $.len(suffix) &&
9
+ $.sliceString(s, $.len(s) - $.len(suffix), undefined) == suffix);
10
+ }
11
+ export function IndexByte(s, c) {
12
+ const char = String.fromCharCode(c);
13
+ return s.indexOf(char);
14
+ }
15
+ export function Index(s, substr) {
16
+ if (substr === '') {
17
+ return 0;
18
+ }
19
+ return s.indexOf(substr);
20
+ }
21
+ export function Cut(s, sep) {
22
+ let i = Index(s, sep);
23
+ if (i >= 0) {
24
+ return [
25
+ $.sliceString(s, undefined, i),
26
+ $.sliceString(s, i + $.len(sep), undefined),
27
+ true,
28
+ ];
29
+ }
30
+ return [s, '', false];
31
+ }
32
+ export function CutPrefix(s, prefix) {
33
+ if (!HasPrefix(s, prefix)) {
34
+ return [s, false];
35
+ }
36
+ return [$.sliceString(s, $.len(prefix), undefined), true];
37
+ }
38
+ export function CutSuffix(s, suffix) {
39
+ if (!HasSuffix(s, suffix)) {
40
+ return [s, false];
41
+ }
42
+ return [$.sliceString(s, undefined, $.len(s) - $.len(suffix)), true];
43
+ }
44
+ export function TrimPrefix(s, prefix) {
45
+ if (HasPrefix(s, prefix)) {
46
+ return $.sliceString(s, $.len(prefix), undefined);
47
+ }
48
+ return s;
49
+ }
50
+ export function TrimSuffix(s, suffix) {
51
+ if (HasSuffix(s, suffix)) {
52
+ return $.sliceString(s, undefined, $.len(s) - $.len(suffix));
53
+ }
54
+ return s;
55
+ }
56
+ export function Clone(s) {
57
+ if ($.len(s) == 0) {
58
+ return '';
59
+ }
60
+ let b = new Uint8Array($.len(s));
61
+ $.copy(b, s);
62
+ return unsafe.String(b[0], $.len(b));
63
+ }
64
+ export function CopyBytes(b, s) {
65
+ return $.copy(b, s);
66
+ }
67
+ //# sourceMappingURL=strings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../gs/stringslite/strings.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,19 @@ export declare class Time {
5
5
  private _location;
6
6
  constructor(date: globalThis.Date, nsec?: number, monotonic?: number, location?: Location);
7
7
  clone(): Time;
8
+ Unix(): number;
9
+ UnixMilli(): number;
10
+ UnixMicro(): number;
11
+ UnixNano(): number;
12
+ Weekday(): WeekdayValue;
13
+ Day(): number;
14
+ Month(): Month;
15
+ Year(): number;
16
+ Hour(): number;
17
+ Minute(): number;
18
+ Second(): number;
19
+ Nanosecond(): number;
20
+ Location(): Location;
8
21
  Format(layout: string): string;
9
22
  Sub(u: Time): Duration;
10
23
  Add(d: Duration): Time;
@@ -31,6 +44,7 @@ export declare class Location {
31
44
  constructor(name: string, offsetSeconds?: number);
32
45
  get name(): string;
33
46
  get offsetSeconds(): number | undefined;
47
+ String(): string;
34
48
  }
35
49
  export declare enum Month {
36
50
  January = 1,
@@ -46,6 +60,47 @@ export declare enum Month {
46
60
  November = 11,
47
61
  December = 12
48
62
  }
63
+ export declare enum Weekday {
64
+ Sunday = 0,
65
+ Monday = 1,
66
+ Tuesday = 2,
67
+ Wednesday = 3,
68
+ Thursday = 4,
69
+ Friday = 5,
70
+ Saturday = 6
71
+ }
72
+ export declare function WeekdayString(w: Weekday): string;
73
+ export declare class WeekdayValue {
74
+ private _value;
75
+ constructor(value: Weekday);
76
+ valueOf(): number;
77
+ String(): string;
78
+ }
79
+ export declare class ParseError extends Error {
80
+ layout: string;
81
+ value: string;
82
+ layoutElem: string;
83
+ valueElem: string;
84
+ message: string;
85
+ constructor(layout: string, value: string, layoutElem: string, valueElem: string, message: string);
86
+ }
87
+ export declare class Timer {
88
+ private _timeout;
89
+ private _duration;
90
+ private _callback?;
91
+ constructor(duration: Duration, callback?: () => void);
92
+ Stop(): boolean;
93
+ Reset(d: Duration): boolean;
94
+ }
95
+ export declare class Ticker {
96
+ private _interval;
97
+ private _duration;
98
+ private _stopped;
99
+ constructor(duration: Duration);
100
+ Stop(): void;
101
+ Reset(d: Duration): void;
102
+ Channel(): AsyncIterableIterator<Time>;
103
+ }
49
104
  export declare function Now(): Time;
50
105
  export declare function Date(year: number, month: Month, day: number, hour: number, min: number, sec: number, nsec: number, loc: Location): Time;
51
106
  export declare const UTC: Location;
@@ -64,3 +119,17 @@ export declare const DateTime = "2006-01-02 15:04:05";
64
119
  export declare const Layout = "01/02 03:04:05PM '06 -0700";
65
120
  export declare const RFC3339 = "2006-01-02T15:04:05Z07:00";
66
121
  export declare const Kitchen = "3:04PM";
122
+ export declare function Unix(sec: number, nsec?: number): Time;
123
+ export declare function UnixMilli(msec: number): Time;
124
+ export declare function UnixMicro(usec: number): Time;
125
+ export declare function UnixNano(nsec: number): Time;
126
+ export declare function ParseDuration(s: string): Duration;
127
+ export declare function Parse(layout: string, value: string): Time;
128
+ export declare function ParseInLocation(layout: string, value: string, loc: Location): Time;
129
+ export declare function After(d: Duration): Promise<Time>;
130
+ export declare function AfterFunc(d: Duration, f: () => void): Timer;
131
+ export declare function NewTimer(d: Duration): Timer;
132
+ export declare function NewTicker(d: Duration): Ticker;
133
+ export declare function Tick(d: Duration): AsyncIterableIterator<Time>;
134
+ export declare function LoadLocation(name: string): Location;
135
+ export declare function LoadLocationFromTZData(name: string, _data: Uint8Array): Location;
@@ -14,6 +14,93 @@ export class Time {
14
14
  clone() {
15
15
  return new Time(this._date, this._nsec, this._monotonic, this._location);
16
16
  }
17
+ // Unix returns t as a Unix time, the number of seconds elapsed since January 1, 1970 UTC
18
+ Unix() {
19
+ return Math.floor(this._date.getTime() / 1000);
20
+ }
21
+ // UnixMilli returns t as a Unix time, the number of milliseconds elapsed since January 1, 1970 UTC
22
+ UnixMilli() {
23
+ return this._date.getTime();
24
+ }
25
+ // UnixMicro returns t as a Unix time, the number of microseconds elapsed since January 1, 1970 UTC
26
+ UnixMicro() {
27
+ return Math.floor(this._date.getTime() * 1000) + Math.floor(this._nsec / 1000);
28
+ }
29
+ // UnixNano returns t as a Unix time, the number of nanoseconds elapsed since January 1, 1970 UTC
30
+ UnixNano() {
31
+ return this._date.getTime() * 1000000 + this._nsec;
32
+ }
33
+ // Weekday returns the day of the week specified by t
34
+ Weekday() {
35
+ if (this._location.offsetSeconds !== undefined) {
36
+ const offsetMs = this._location.offsetSeconds * 1000;
37
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
38
+ return new WeekdayValue(adjustedTime.getUTCDay());
39
+ }
40
+ return new WeekdayValue(this._date.getDay());
41
+ }
42
+ // Day returns the day of the month specified by t
43
+ Day() {
44
+ if (this._location.offsetSeconds !== undefined) {
45
+ const offsetMs = this._location.offsetSeconds * 1000;
46
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
47
+ return adjustedTime.getUTCDate();
48
+ }
49
+ return this._date.getDate();
50
+ }
51
+ // Month returns the month of the year specified by t
52
+ Month() {
53
+ if (this._location.offsetSeconds !== undefined) {
54
+ const offsetMs = this._location.offsetSeconds * 1000;
55
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
56
+ return (adjustedTime.getUTCMonth() + 1);
57
+ }
58
+ return (this._date.getMonth() + 1);
59
+ }
60
+ // Year returns the year in which t occurs
61
+ Year() {
62
+ if (this._location.offsetSeconds !== undefined) {
63
+ const offsetMs = this._location.offsetSeconds * 1000;
64
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
65
+ return adjustedTime.getUTCFullYear();
66
+ }
67
+ return this._date.getFullYear();
68
+ }
69
+ // Hour returns the hour within the day specified by t, in the range [0, 23]
70
+ Hour() {
71
+ if (this._location.offsetSeconds !== undefined) {
72
+ const offsetMs = this._location.offsetSeconds * 1000;
73
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
74
+ return adjustedTime.getUTCHours();
75
+ }
76
+ return this._date.getHours();
77
+ }
78
+ // Minute returns the minute offset within the hour specified by t, in the range [0, 59]
79
+ Minute() {
80
+ if (this._location.offsetSeconds !== undefined) {
81
+ const offsetMs = this._location.offsetSeconds * 1000;
82
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
83
+ return adjustedTime.getUTCMinutes();
84
+ }
85
+ return this._date.getMinutes();
86
+ }
87
+ // Second returns the second offset within the minute specified by t, in the range [0, 59]
88
+ Second() {
89
+ if (this._location.offsetSeconds !== undefined) {
90
+ const offsetMs = this._location.offsetSeconds * 1000;
91
+ const adjustedTime = new globalThis.Date(this._date.getTime() + offsetMs);
92
+ return adjustedTime.getUTCSeconds();
93
+ }
94
+ return this._date.getSeconds();
95
+ }
96
+ // Nanosecond returns the nanosecond offset within the second specified by t, in the range [0, 999999999]
97
+ Nanosecond() {
98
+ return this._nsec;
99
+ }
100
+ // Location returns the time zone information associated with t
101
+ Location() {
102
+ return this._location;
103
+ }
17
104
  // Format returns a textual representation of the time value formatted according to the layout
18
105
  Format(layout) {
19
106
  // Implementation of Go's time formatting based on reference time:
@@ -493,6 +580,10 @@ export class Location {
493
580
  get offsetSeconds() {
494
581
  return this._offsetSeconds;
495
582
  }
583
+ // String returns a descriptive name for the time zone information
584
+ String() {
585
+ return this._name;
586
+ }
496
587
  }
497
588
  // Month represents a month of the year
498
589
  export var Month;
@@ -510,6 +601,130 @@ export var Month;
510
601
  Month[Month["November"] = 11] = "November";
511
602
  Month[Month["December"] = 12] = "December";
512
603
  })(Month || (Month = {}));
604
+ // Weekday represents a day of the week
605
+ export var Weekday;
606
+ (function (Weekday) {
607
+ Weekday[Weekday["Sunday"] = 0] = "Sunday";
608
+ Weekday[Weekday["Monday"] = 1] = "Monday";
609
+ Weekday[Weekday["Tuesday"] = 2] = "Tuesday";
610
+ Weekday[Weekday["Wednesday"] = 3] = "Wednesday";
611
+ Weekday[Weekday["Thursday"] = 4] = "Thursday";
612
+ Weekday[Weekday["Friday"] = 5] = "Friday";
613
+ Weekday[Weekday["Saturday"] = 6] = "Saturday";
614
+ })(Weekday || (Weekday = {}));
615
+ // WeekdayString returns the string representation of a Weekday
616
+ export function WeekdayString(w) {
617
+ const names = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
618
+ return names[w] || 'Unknown';
619
+ }
620
+ // WeekdayValue wraps a Weekday enum value and provides methods
621
+ export class WeekdayValue {
622
+ _value;
623
+ constructor(value) {
624
+ this._value = value;
625
+ }
626
+ valueOf() {
627
+ return this._value;
628
+ }
629
+ String() {
630
+ return WeekdayString(this._value);
631
+ }
632
+ }
633
+ // ParseError describes a problem parsing a time string
634
+ export class ParseError extends Error {
635
+ layout;
636
+ value;
637
+ layoutElem;
638
+ valueElem;
639
+ message;
640
+ constructor(layout, value, layoutElem, valueElem, message) {
641
+ super(message);
642
+ this.layout = layout;
643
+ this.value = value;
644
+ this.layoutElem = layoutElem;
645
+ this.valueElem = valueElem;
646
+ this.message = message;
647
+ this.name = 'ParseError';
648
+ }
649
+ }
650
+ // Timer represents a single event timer
651
+ export class Timer {
652
+ _timeout;
653
+ _duration;
654
+ _callback;
655
+ constructor(duration, callback) {
656
+ this._duration = duration;
657
+ this._callback = callback;
658
+ const ms = duration.valueOf() / 1000000; // Convert nanoseconds to milliseconds
659
+ if (callback) {
660
+ this._timeout = setTimeout(callback, ms);
661
+ }
662
+ else {
663
+ this._timeout = setTimeout(() => { }, ms);
664
+ }
665
+ }
666
+ // Stop prevents the Timer from firing
667
+ Stop() {
668
+ if (typeof this._timeout === 'number') {
669
+ clearTimeout(this._timeout);
670
+ }
671
+ else {
672
+ clearTimeout(this._timeout);
673
+ }
674
+ return true;
675
+ }
676
+ // Reset changes the timer to expire after duration d
677
+ Reset(d) {
678
+ this.Stop();
679
+ const ms = d.valueOf() / 1000000;
680
+ if (this._callback) {
681
+ this._timeout = setTimeout(this._callback, ms);
682
+ }
683
+ else {
684
+ this._timeout = setTimeout(() => { }, ms);
685
+ }
686
+ return true;
687
+ }
688
+ }
689
+ // Ticker holds a channel that delivers ticks at intervals
690
+ export class Ticker {
691
+ _interval;
692
+ _duration;
693
+ _stopped = false;
694
+ constructor(duration) {
695
+ this._duration = duration;
696
+ const ms = duration.valueOf() / 1000000; // Convert nanoseconds to milliseconds
697
+ this._interval = setInterval(() => { }, ms);
698
+ }
699
+ // Stop turns off a ticker
700
+ Stop() {
701
+ this._stopped = true;
702
+ if (typeof this._interval === 'number') {
703
+ clearInterval(this._interval);
704
+ }
705
+ else {
706
+ clearInterval(this._interval);
707
+ }
708
+ }
709
+ // Reset stops a ticker and resets its period to the specified duration
710
+ Reset(d) {
711
+ this.Stop();
712
+ this._stopped = false;
713
+ this._duration = d;
714
+ const ms = d.valueOf() / 1000000;
715
+ this._interval = setInterval(() => { }, ms);
716
+ }
717
+ // Channel returns an async iterator that yields time values
718
+ async *Channel() {
719
+ const ms = this._duration.valueOf() / 1000000;
720
+ while (!this._stopped) {
721
+ await new Promise(resolve => setTimeout(resolve, ms));
722
+ if (!this._stopped) {
723
+ yield Now();
724
+ }
725
+ }
726
+ }
727
+ }
513
728
  // Now returns the current local time with monotonic clock reading
514
729
  export function Now() {
515
730
  const date = new globalThis.Date();
@@ -576,4 +791,139 @@ export const DateTime = '2006-01-02 15:04:05';
576
791
  export const Layout = "01/02 03:04:05PM '06 -0700";
577
792
  export const RFC3339 = '2006-01-02T15:04:05Z07:00';
578
793
  export const Kitchen = '3:04PM';
794
+ // Unix returns the local Time corresponding to the given Unix time,
795
+ // sec seconds and nsec nanoseconds since January 1, 1970 UTC
796
+ export function Unix(sec, nsec = 0) {
797
+ const ms = sec * 1000 + Math.floor(nsec / 1000000);
798
+ const remainingNsec = nsec % 1000000;
799
+ return new Time(new globalThis.Date(ms), remainingNsec, undefined, UTC);
800
+ }
801
+ // UnixMilli returns the local Time corresponding to the given Unix time,
802
+ // msec milliseconds since January 1, 1970 UTC
803
+ export function UnixMilli(msec) {
804
+ return new Time(new globalThis.Date(msec), 0, undefined, UTC);
805
+ }
806
+ // UnixMicro returns the local Time corresponding to the given Unix time,
807
+ // usec microseconds since January 1, 1970 UTC
808
+ export function UnixMicro(usec) {
809
+ const ms = Math.floor(usec / 1000);
810
+ const nsec = (usec % 1000) * 1000;
811
+ return new Time(new globalThis.Date(ms), nsec, undefined, UTC);
812
+ }
813
+ // UnixNano returns the local Time corresponding to the given Unix time,
814
+ // nsec nanoseconds since January 1, 1970 UTC
815
+ export function UnixNano(nsec) {
816
+ const ms = Math.floor(nsec / 1000000);
817
+ const remainingNsec = nsec % 1000000;
818
+ return new Time(new globalThis.Date(ms), remainingNsec, undefined, UTC);
819
+ }
820
+ // ParseDuration parses a duration string
821
+ // A duration string is a possibly signed sequence of decimal numbers,
822
+ // each with optional fraction and a unit suffix
823
+ export function ParseDuration(s) {
824
+ const regex = /^([+-]?)(\d+(?:\.\d+)?)(ns|us|µs|ms|s|m|h)$/;
825
+ const match = s.match(regex);
826
+ if (!match) {
827
+ throw new Error(`time: invalid duration "${s}"`);
828
+ }
829
+ const [, sign, valueStr, unit] = match;
830
+ let value = parseFloat(valueStr);
831
+ if (sign === '-')
832
+ value = -value;
833
+ let nanoseconds;
834
+ switch (unit) {
835
+ case 'ns':
836
+ nanoseconds = value;
837
+ break;
838
+ case 'us':
839
+ case 'µs':
840
+ nanoseconds = value * 1000;
841
+ break;
842
+ case 'ms':
843
+ nanoseconds = value * 1000000;
844
+ break;
845
+ case 's':
846
+ nanoseconds = value * 1000000000;
847
+ break;
848
+ case 'm':
849
+ nanoseconds = value * 60000000000;
850
+ break;
851
+ case 'h':
852
+ nanoseconds = value * 3600000000000;
853
+ break;
854
+ default:
855
+ throw new Error(`time: unknown unit "${unit}" in duration "${s}"`);
856
+ }
857
+ return new Duration(Math.floor(nanoseconds));
858
+ }
859
+ // Parse parses a formatted string and returns the time value it represents
860
+ export function Parse(layout, value) {
861
+ return ParseInLocation(layout, value, UTC);
862
+ }
863
+ // ParseInLocation is like Parse but differs in two important ways
864
+ export function ParseInLocation(layout, value, loc) {
865
+ // This is a simplified implementation
866
+ // A full implementation would need to parse according to the layout format
867
+ // Handle common layouts
868
+ if (layout === RFC3339 || layout === '2006-01-02T15:04:05Z07:00') {
869
+ const date = new globalThis.Date(value);
870
+ if (isNaN(date.getTime())) {
871
+ throw new ParseError(layout, value, '', '', `parsing time "${value}" as "${layout}": cannot parse`);
872
+ }
873
+ return new Time(date, 0, undefined, loc);
874
+ }
875
+ if (layout === DateTime || layout === '2006-01-02 15:04:05') {
876
+ const date = new globalThis.Date(value);
877
+ if (isNaN(date.getTime())) {
878
+ throw new ParseError(layout, value, '', '', `parsing time "${value}" as "${layout}": cannot parse`);
879
+ }
880
+ return new Time(date, 0, undefined, loc);
881
+ }
882
+ // Fallback to standard Date parsing
883
+ const date = new globalThis.Date(value);
884
+ if (isNaN(date.getTime())) {
885
+ throw new ParseError(layout, value, '', '', `parsing time "${value}" as "${layout}": cannot parse`);
886
+ }
887
+ return new Time(date, 0, undefined, loc);
888
+ }
889
+ // After waits for the duration to elapse and then returns the current time
890
+ export async function After(d) {
891
+ await Sleep(d);
892
+ return Now();
893
+ }
894
+ // AfterFunc waits for the duration to elapse and then calls f
895
+ export function AfterFunc(d, f) {
896
+ return new Timer(d, f);
897
+ }
898
+ // NewTimer creates a new Timer that will fire after the given duration
899
+ export function NewTimer(d) {
900
+ return new Timer(d);
901
+ }
902
+ // NewTicker returns a new Ticker containing a channel that will send the current time
903
+ export function NewTicker(d) {
904
+ return new Ticker(d);
905
+ }
906
+ // Tick is a convenience wrapper for NewTicker providing access to the ticking channel only
907
+ export function Tick(d) {
908
+ return new Ticker(d).Channel();
909
+ }
910
+ // LoadLocation returns the Location with the given name
911
+ // This is a simplified implementation that only supports UTC and Local
912
+ export function LoadLocation(name) {
913
+ switch (name) {
914
+ case 'UTC':
915
+ return UTC;
916
+ case 'Local':
917
+ // Return a location that uses local time (no fixed offset)
918
+ return new Location('Local');
919
+ default:
920
+ throw new Error(`time: unknown time zone ${name}`);
921
+ }
922
+ }
923
+ // LoadLocationFromTZData returns a Location with the given name
924
+ // This is a simplified implementation
925
+ export function LoadLocationFromTZData(name, _data) {
926
+ // In a real implementation, this would parse the timezone data
927
+ return new Location(name);
928
+ }
579
929
  //# sourceMappingURL=time.js.map