@tlua/tlua-win32-arm64 0.0.24 → 0.0.26

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.
@@ -257,20 +257,25 @@ interface CoroutineLib {
257
257
 
258
258
  declare coroutine: CoroutineLib;
259
259
 
260
+ // The string metatable's `__index` is the `string` table itself, so a string's
261
+ // members ARE StringLib's functions -- reached through a receiver rather than
262
+ // bound to one. Each therefore declares `self` explicitly, exactly as a colon
263
+ // method declaration does: `s:sub(1, 2)` passes the receiver as the implicit
264
+ // first argument, and the equivalent `s.sub(s, 1, 2)` writes it out.
260
265
  interface String {
261
266
  readonly length: number;
262
- byte(i?: number, j?: number): (number?, ...number);
263
- find(pattern: string, init?: number, plain?: boolean): (number?, number?, ...string);
264
- format(...: any): string;
265
- gmatch(pattern: string): () => string;
266
- gsub(pattern: string, replacement: string | table | function, n?: number): (string, number);
267
- len(): number;
268
- lower(): string;
269
- match(pattern: string, init?: number): (string?, ...string);
270
- rep(n: number): string;
271
- reverse(): string;
272
- sub(i: number, j?: number): string;
273
- upper(): string;
267
+ byte(self: string, i?: number, j?: number): (number?, ...number);
268
+ find(self: string, pattern: string, init?: number, plain?: boolean): (number?, number?, ...string);
269
+ format(self: string, ...: any): string;
270
+ gmatch(self: string, pattern: string): () => string;
271
+ gsub(self: string, pattern: string, replacement: string | table | function, n?: number): (string, number);
272
+ len(self: string): number;
273
+ lower(self: string): string;
274
+ match(self: string, pattern: string, init?: number): (string?, ...string);
275
+ rep(self: string, n: number): string;
276
+ reverse(self: string): string;
277
+ sub(self: string, i: number, j?: number): string;
278
+ upper(self: string): string;
274
279
  }
275
280
 
276
281
  interface StringLib {
@@ -345,15 +350,18 @@ declare math: MathLib;
345
350
 
346
351
  type LuaReadFormat = "*n" | "*a" | "*l" | number;
347
352
 
348
- // File handles are userdata in Lua, so `type(file)` reports "userdata".
353
+ // File handles are userdata in Lua, so `type(file)` reports "userdata". Their
354
+ // methods live on the handle's metatable and take the handle as their first
355
+ // argument, so each declares `self`: `f:read("*a")` passes the receiver
356
+ // implicitly, `f.read(f, "*a")` writes it out.
349
357
  interface LuaFile extends LuaUserdata {
350
- close(): (boolean | nil, string?);
351
- flush(): (boolean | nil, string?);
352
- lines(...: LuaReadFormat): function;
353
- read(...: LuaReadFormat): (any, ...any);
354
- seek(whence?: "set" | "cur" | "end", offset?: number): (number | nil, string?);
355
- setvbuf(mode: "no" | "full" | "line", size?: number): (boolean | nil, string?);
356
- write(...: string | number): (LuaFile | nil, string?);
358
+ close(self: LuaFile): (boolean | nil, string?);
359
+ flush(self: LuaFile): (boolean | nil, string?);
360
+ lines(self: LuaFile, ...: LuaReadFormat): function;
361
+ read(self: LuaFile, ...: LuaReadFormat): (any, ...any);
362
+ seek(self: LuaFile, whence?: "set" | "cur" | "end", offset?: number): (number | nil, string?);
363
+ setvbuf(self: LuaFile, mode: "no" | "full" | "line", size?: number): (boolean | nil, string?);
364
+ write(self: LuaFile, ...: string | number): (LuaFile | nil, string?);
357
365
  }
358
366
 
359
367
  interface IOLib {
@@ -515,10 +523,12 @@ interface LuaCType {
515
523
  (...: any): cdata;
516
524
  }
517
525
 
526
+ // A callback object's methods take the callback itself, so each declares
527
+ // `self`: `cb:free()` passes the receiver implicitly.
518
528
  interface LuaCallback extends LuaCData {
519
529
  readonly __ffiCallbackBrand: unique symbol;
520
- free(): void;
521
- set(fn: function): void;
530
+ free(self: LuaCallback): void;
531
+ set(self: LuaCallback, fn: function): void;
522
532
  }
523
533
 
524
534
  interface LuaCNamespace {
@@ -600,21 +610,24 @@ interface JITUtilLib {
600
610
  ircalladdr(index: number): number | nil;
601
611
  }
602
612
 
613
+ // Buffer methods are metatable members taking the buffer as their first
614
+ // argument, so each declares `self`: `buf:put("x")` passes the receiver
615
+ // implicitly, `buf.put(buf, "x")` writes it out.
603
616
  interface LuaStringBuffer {
604
- put(value: string | number | table, ...: string | number | table): LuaStringBuffer;
605
- putf(format: string, ...: string | number | table): LuaStringBuffer;
606
- putcdata(value: cdata, length: number): LuaStringBuffer;
607
- set(value: string | cdata, length?: number): LuaStringBuffer;
608
- reset(): LuaStringBuffer;
609
- free(): void;
610
- reserve(size: number): (cdata, number);
611
- commit(used: number): LuaStringBuffer;
612
- skip(length: number): LuaStringBuffer;
613
- get(length?: number, ...: number | nil): (string, ...string);
614
- tostring(): string;
615
- ref(): (cdata, number);
616
- encode(value: any): LuaStringBuffer;
617
- decode(): any;
617
+ put(self: LuaStringBuffer, value: string | number | table, ...: string | number | table): LuaStringBuffer;
618
+ putf(self: LuaStringBuffer, format: string, ...: string | number | table): LuaStringBuffer;
619
+ putcdata(self: LuaStringBuffer, value: cdata, length: number): LuaStringBuffer;
620
+ set(self: LuaStringBuffer, value: string | cdata, length?: number): LuaStringBuffer;
621
+ reset(self: LuaStringBuffer): LuaStringBuffer;
622
+ free(self: LuaStringBuffer): void;
623
+ reserve(self: LuaStringBuffer, size: number): (cdata, number);
624
+ commit(self: LuaStringBuffer, used: number): LuaStringBuffer;
625
+ skip(self: LuaStringBuffer, length: number): LuaStringBuffer;
626
+ get(self: LuaStringBuffer, length?: number, ...: number | nil): (string, ...string);
627
+ tostring(self: LuaStringBuffer): string;
628
+ ref(self: LuaStringBuffer): (cdata, number);
629
+ encode(self: LuaStringBuffer, value: any): LuaStringBuffer;
630
+ decode(self: LuaStringBuffer): any;
618
631
  }
619
632
 
620
633
  interface StringBufferOptions {
@@ -623,8 +636,11 @@ interface StringBufferOptions {
623
636
  }
624
637
 
625
638
  interface StringBufferLib {
626
- new(size?: number, options?: StringBufferOptions): LuaStringBuffer;
627
- new(options: StringBufferOptions): LuaStringBuffer;
639
+ // Quoted, as ffi's `new` is: a bare `new(...)` member declares a CONSTRUCT
640
+ // signature, which would leave `buffer.new(16)` with no `new` property at
641
+ // all. tlua has no `new` expression, so the name is only ever a member.
642
+ "new"(size?: number, options?: StringBufferOptions): LuaStringBuffer;
643
+ "new"(options: StringBufferOptions): LuaStringBuffer;
628
644
  encode(value: any): string;
629
645
  decode(value: string): any;
630
646
  }
package/lib/tlua.exe CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tlua/tlua-win32-arm64",
3
- "version": "0.0.24",
3
+ "version": "0.0.26",
4
4
  "license": "Apache-2.0",
5
5
  "author": "tlua",
6
6
  "homepage": "https://github.com/apyrr/tlua",
@@ -32,7 +32,7 @@
32
32
  "exports": {
33
33
  "./package.json": "./package.json"
34
34
  },
35
- "gitHead": "b02a22e2ee7a75a536fc6eeb6480223c810ff4ad",
35
+ "gitHead": "f5115be10c6562d6d4ddee74d652164f9900ac73",
36
36
  "publishConfig": {
37
37
  "access": "public",
38
38
  "tag": "latest"