@@ -51,6 +51,97 @@ local t = {
51
51
}
52
52
]]
53
53
54
+ TEST [[
55
+ ---@diagnostic disable: unused-local
56
+ ---@class A
57
+ ---@field x number
58
+ ---@field y? number
59
+ ---@field z number
60
+ local A = {}
61
+
62
+ function A:fun()
63
+ end
64
+
65
+ ---@type A
66
+ local t = {
67
+ x = 1,
68
+ y = 2,
69
+ z = 3,
70
+ }
71
+ ]]
72
+
73
+ TEST [[
74
+ ---@diagnostic disable: unused-local
75
+
76
+ ---@class Parent
77
+ ---@field a number
78
+ local Parent = {}
79
+
80
+ function Parent:fun2()
81
+ end
82
+
83
+ ---@class A : Parent
84
+ ---@field x number
85
+ ---@field y? number
86
+ ---@field z number
87
+ local A = {}
88
+
89
+ function A:fun()
90
+ end
91
+
92
+ ---@type A
93
+ local t = <!{
94
+ x = 1,
95
+ y = 2,
96
+ }!>
97
+ ]]
98
+
99
+ TEST [[
100
+ ---@diagnostic disable: unused-local
101
+
102
+ ---@class Parent
103
+ ---@field a number
104
+ local Parent = {}
105
+
106
+ function Parent:fun2()
107
+ end
108
+
109
+ ---@class A : Parent
110
+ ---@field x number
111
+ ---@field y? number
112
+ ---@field z number
113
+ local A = {}
114
+
115
+ function A:fun()
116
+ end
117
+
118
+ ---@type A
119
+ local t = {
120
+ x = 1,
121
+ y = 2,
122
+ z = 3,
123
+ a = 1,
124
+ }
125
+ ]]
126
+
127
+ TEST [[
128
+ ---@diagnostic disable: unused-local
129
+ ---@class A
130
+ ---@field x number
131
+ ---@field y? number
132
+ ---@field z number
133
+ local A = {}
134
+
135
+ function A:fun()
136
+ end
137
+
138
+ ---@type A
139
+ local t = <!{
140
+ x = 1,
141
+ y = 2,
142
+ }!>
143
+ ]]
144
+
54
145
TEST [[
55
146
---@diagnostic disable: unused-local
56
147
---@class A
@@ -336,7 +427,7 @@ local x = <!{
336
427
}!>
337
428
]]
338
429
339
- TEST [[
430
+ TEST [[
340
431
---@class A
341
432
---@field [1] string
342
433
---@field x number
@@ -345,7 +436,7 @@ TEST[[
345
436
local t = {x = 1, ""}
346
437
]]
347
438
348
- TEST [[
439
+ TEST [[
349
440
---@class A
350
441
---@field [1] string
351
442
---@field x number
@@ -356,7 +447,7 @@ local t = <!{x = 1}!>
356
447
357
448
-- Inheritance
358
449
359
- TEST [[
450
+ TEST [[
360
451
---@class A
361
452
---@field x number
362
453
@@ -366,7 +457,7 @@ TEST[[
366
457
local t = <!{}!>
367
458
]]
368
459
369
- TEST [[
460
+ TEST [[
370
461
---@class A
371
462
---@field x number
372
463
---@field y number
@@ -377,7 +468,7 @@ TEST[[
377
468
local t = <!{y = 1}!>
378
469
]]
379
470
380
- TEST [[
471
+ TEST [[
381
472
---@class A
382
473
---@field x number
383
474
@@ -390,7 +481,7 @@ local t = <!{y = 1}!>
390
481
391
482
-- Inheritance + optional
392
483
393
- TEST [[
484
+ TEST [[
394
485
---@class A
395
486
---@field x? number
396
487
@@ -400,7 +491,7 @@ TEST[[
400
491
local t = {}
401
492
]]
402
493
403
- TEST [[
494
+ TEST [[
404
495
---@class A
405
496
---@field x? number
406
497
---@field y number
@@ -411,7 +502,7 @@ TEST[[
411
502
local t = {y = 1}
412
503
]]
413
504
414
- TEST [[
505
+ TEST [[
415
506
---@class A
416
507
---@field x? number
417
508
@@ -424,7 +515,7 @@ local t = {y = 1}
424
515
425
516
-- Inheritance + function call
426
517
427
- TEST [[
518
+ TEST [[
428
519
---@class A
429
520
---@field x number
430
521
@@ -436,7 +527,7 @@ local function f(b) end
436
527
f <!{}!>
437
528
]]
438
529
439
- TEST [[
530
+ TEST [[
440
531
---@class A
441
532
---@field x number
442
533
---@field y number
@@ -449,7 +540,7 @@ local function f(b) end
449
540
f <!{y = 1}!>
450
541
]]
451
542
452
- TEST [[
543
+ TEST [[
453
544
---@class A
454
545
---@field x number
455
546
@@ -464,7 +555,7 @@ f <!{y = 1}!>
464
555
465
556
-- partial class
466
557
467
- TEST [[
558
+ TEST [[
468
559
---@class A
469
560
---@field x number
470
561
@@ -474,7 +565,7 @@ TEST[[
474
565
local t = {}
475
566
]]
476
567
477
- TEST [[
568
+ TEST [[
478
569
---@class A
479
570
---@field x number
480
571
@@ -485,7 +576,7 @@ TEST[[
485
576
local t = <!{}!>
486
577
]]
487
578
488
- TEST [[
579
+ TEST [[
489
580
---@class A
490
581
---@field x number
491
582
0 commit comments