brighterscript 0.69.12 → 0.70.0

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.
@@ -224,12 +224,13 @@ describe('BrsFile BrighterScript classes', () => {
224
224
  end sub
225
225
  end class
226
226
  `, `
227
+ sub __Animal_method_new()
228
+ m.species1 = "Animal"
229
+ print "From Animal: " + m.species
230
+ end sub
227
231
  function __Animal_builder()
228
232
  instance = {}
229
- instance.new = sub()
230
- m.species1 = "Animal"
231
- print "From Animal: " + m.species
232
- end sub
233
+ instance.new = __Animal_method_new
233
234
  return instance
234
235
  end function
235
236
  function Animal()
@@ -237,14 +238,15 @@ describe('BrsFile BrighterScript classes', () => {
237
238
  instance.new()
238
239
  return instance
239
240
  end function
241
+ sub __Duck_method_new()
242
+ m.super0_new()
243
+ m.species2 = "Duck"
244
+ print "From Duck: " + m.species
245
+ end sub
240
246
  function __Duck_builder()
241
247
  instance = __Animal_builder()
242
248
  instance.super0_new = instance.new
243
- instance.new = sub()
244
- m.super0_new()
245
- m.species2 = "Duck"
246
- print "From Duck: " + m.species
247
- end sub
249
+ instance.new = __Duck_method_new
248
250
  return instance
249
251
  end function
250
252
  function Duck()
@@ -265,10 +267,11 @@ describe('BrsFile BrighterScript classes', () => {
265
267
  end sub
266
268
  end class
267
269
  `, `
270
+ sub __Animal_method_new()
271
+ end sub
268
272
  function __Animal_builder()
269
273
  instance = {}
270
- instance.new = sub()
271
- end sub
274
+ instance.new = __Animal_method_new
272
275
  return instance
273
276
  end function
274
277
  function Animal()
@@ -276,13 +279,14 @@ describe('BrsFile BrighterScript classes', () => {
276
279
  instance.new()
277
280
  return instance
278
281
  end function
282
+ sub __Duck_method_new()
283
+ 'comment should not cause double super call
284
+ m.super0_new()
285
+ end sub
279
286
  function __Duck_builder()
280
287
  instance = __Animal_builder()
281
288
  instance.super0_new = instance.new
282
- instance.new = sub()
283
- 'comment should not cause double super call
284
- m.super0_new()
285
- end sub
289
+ instance.new = __Duck_method_new
286
290
  return instance
287
291
  end function
288
292
  function Duck()
@@ -303,10 +307,11 @@ describe('BrsFile BrighterScript classes', () => {
303
307
  end sub
304
308
  end class
305
309
  `, `
310
+ sub __Animal_method_new()
311
+ end sub
306
312
  function __Animal_builder()
307
313
  instance = {}
308
- instance.new = sub()
309
- end sub
314
+ instance.new = __Animal_method_new
310
315
  return instance
311
316
  end function
312
317
  function Animal()
@@ -314,13 +319,14 @@ describe('BrsFile BrighterScript classes', () => {
314
319
  instance.new()
315
320
  return instance
316
321
  end function
322
+ sub __Duck_method_new()
323
+ print "I am a statement which does not use m"
324
+ m.super0_new()
325
+ end sub
317
326
  function __Duck_builder()
318
327
  instance = __Animal_builder()
319
328
  instance.super0_new = instance.new
320
- instance.new = sub()
321
- print "I am a statement which does not use m"
322
- m.super0_new()
323
- end sub
329
+ instance.new = __Duck_method_new
324
330
  return instance
325
331
  end function
326
332
  function Duck()
@@ -342,11 +348,12 @@ describe('BrsFile BrighterScript classes', () => {
342
348
  className3 = "BabyDuck"
343
349
  end class
344
350
  `, `
351
+ sub __Animal_method_new()
352
+ m.className1 = "Animal"
353
+ end sub
345
354
  function __Animal_builder()
346
355
  instance = {}
347
- instance.new = sub()
348
- m.className1 = "Animal"
349
- end sub
356
+ instance.new = __Animal_method_new
350
357
  return instance
351
358
  end function
352
359
  function Animal()
@@ -354,13 +361,14 @@ describe('BrsFile BrighterScript classes', () => {
354
361
  instance.new()
355
362
  return instance
356
363
  end function
364
+ sub __Duck_method_new()
365
+ m.super0_new()
366
+ m.className2 = "Duck"
367
+ end sub
357
368
  function __Duck_builder()
358
369
  instance = __Animal_builder()
359
370
  instance.super0_new = instance.new
360
- instance.new = sub()
361
- m.super0_new()
362
- m.className2 = "Duck"
363
- end sub
371
+ instance.new = __Duck_method_new
364
372
  return instance
365
373
  end function
366
374
  function Duck()
@@ -368,13 +376,14 @@ describe('BrsFile BrighterScript classes', () => {
368
376
  instance.new()
369
377
  return instance
370
378
  end function
379
+ sub __BabyDuck_method_new()
380
+ m.super1_new()
381
+ m.className3 = "BabyDuck"
382
+ end sub
371
383
  function __BabyDuck_builder()
372
384
  instance = __Duck_builder()
373
385
  instance.super1_new = instance.new
374
- instance.new = sub()
375
- m.super1_new()
376
- m.className3 = "BabyDuck"
377
- end sub
386
+ instance.new = __BabyDuck_method_new
378
387
  return instance
379
388
  end function
380
389
  function BabyDuck()
@@ -393,10 +402,11 @@ describe('BrsFile BrighterScript classes', () => {
393
402
  end class
394
403
  end namespace
395
404
  `, `
405
+ sub __Birds_WaterFowl_Duck_method_new()
406
+ end sub
396
407
  function __Birds_WaterFowl_Duck_builder()
397
408
  instance = {}
398
- instance.new = sub()
399
- end sub
409
+ instance.new = __Birds_WaterFowl_Duck_method_new
400
410
  return instance
401
411
  end function
402
412
  function Birds_WaterFowl_Duck()
@@ -404,12 +414,13 @@ describe('BrsFile BrighterScript classes', () => {
404
414
  instance.new()
405
415
  return instance
406
416
  end function
417
+ sub __Birds_WaterFowl_BabyDuck_method_new()
418
+ m.super0_new()
419
+ end sub
407
420
  function __Birds_WaterFowl_BabyDuck_builder()
408
421
  instance = __Birds_WaterFowl_Duck_builder()
409
422
  instance.super0_new = instance.new
410
- instance.new = sub()
411
- m.super0_new()
412
- end sub
423
+ instance.new = __Birds_WaterFowl_BabyDuck_method_new
413
424
  return instance
414
425
  end function
415
426
  function Birds_WaterFowl_BabyDuck()
@@ -424,10 +435,11 @@ describe('BrsFile BrighterScript classes', () => {
424
435
  class Duck
425
436
  end class
426
437
  `, `
438
+ sub __Duck_method_new()
439
+ end sub
427
440
  function __Duck_builder()
428
441
  instance = {}
429
- instance.new = sub()
430
- end sub
442
+ instance.new = __Duck_method_new
431
443
  return instance
432
444
  end function
433
445
  function Duck()
@@ -454,10 +466,11 @@ describe('BrsFile BrighterScript classes', () => {
454
466
  class BabyDuck extends Duck
455
467
  end class
456
468
  `, `
469
+ sub __Animal_method_new(p1)
470
+ end sub
457
471
  function __Animal_builder()
458
472
  instance = {}
459
- instance.new = sub(p1)
460
- end sub
473
+ instance.new = __Animal_method_new
461
474
  return instance
462
475
  end function
463
476
  function Animal(p1)
@@ -465,12 +478,13 @@ describe('BrsFile BrighterScript classes', () => {
465
478
  instance.new(p1)
466
479
  return instance
467
480
  end function
481
+ sub __Bird_method_new(p1)
482
+ m.super0_new(p1)
483
+ end sub
468
484
  function __Bird_builder()
469
485
  instance = __Animal_builder()
470
486
  instance.super0_new = instance.new
471
- instance.new = sub(p1)
472
- m.super0_new(p1)
473
- end sub
487
+ instance.new = __Bird_method_new
474
488
  return instance
475
489
  end function
476
490
  function Bird(p1)
@@ -478,13 +492,14 @@ describe('BrsFile BrighterScript classes', () => {
478
492
  instance.new(p1)
479
493
  return instance
480
494
  end function
495
+ sub __Duck_method_new(p1, p2)
496
+ m.super1_new(p1)
497
+ m.p2 = p2
498
+ end sub
481
499
  function __Duck_builder()
482
500
  instance = __Bird_builder()
483
501
  instance.super1_new = instance.new
484
- instance.new = sub(p1, p2)
485
- m.super1_new(p1)
486
- m.p2 = p2
487
- end sub
502
+ instance.new = __Duck_method_new
488
503
  return instance
489
504
  end function
490
505
  function Duck(p1, p2)
@@ -492,12 +507,13 @@ describe('BrsFile BrighterScript classes', () => {
492
507
  instance.new(p1, p2)
493
508
  return instance
494
509
  end function
510
+ sub __BabyDuck_method_new(p1, p2)
511
+ m.super2_new(p1, p2)
512
+ end sub
495
513
  function __BabyDuck_builder()
496
514
  instance = __Duck_builder()
497
515
  instance.super2_new = instance.new
498
- instance.new = sub(p1, p2)
499
- m.super2_new(p1, p2)
500
- end sub
516
+ instance.new = __BabyDuck_method_new
501
517
  return instance
502
518
  end function
503
519
  function BabyDuck(p1, p2)
@@ -514,10 +530,11 @@ describe('BrsFile BrighterScript classes', () => {
514
530
  end sub
515
531
  end class
516
532
  `, `
533
+ sub __Duck_method_new(name as string, age as integer)
534
+ end sub
517
535
  function __Duck_builder()
518
536
  instance = {}
519
- instance.new = sub(name as string, age as integer)
520
- end sub
537
+ instance.new = __Duck_method_new
521
538
  return instance
522
539
  end function
523
540
  function Duck(name as string, age as integer)
@@ -541,10 +558,11 @@ describe('BrsFile BrighterScript classes', () => {
541
558
  end sub
542
559
  end class
543
560
  `, `
561
+ sub __Animal_method_new(name as string)
562
+ end sub
544
563
  function __Animal_builder()
545
564
  instance = {}
546
- instance.new = sub(name as string)
547
- end sub
565
+ instance.new = __Animal_method_new
548
566
  return instance
549
567
  end function
550
568
  function Animal(name as string)
@@ -552,13 +570,14 @@ describe('BrsFile BrighterScript classes', () => {
552
570
  instance.new(name)
553
571
  return instance
554
572
  end function
573
+ sub __Duck_method_new(name as string, age as integer)
574
+ m.super0_new(name)
575
+ m.super0_DoSomething()
576
+ end sub
555
577
  function __Duck_builder()
556
578
  instance = __Animal_builder()
557
579
  instance.super0_new = instance.new
558
- instance.new = sub(name as string, age as integer)
559
- m.super0_new(name)
560
- m.super0_DoSomething()
561
- end sub
580
+ instance.new = __Duck_method_new
562
581
  return instance
563
582
  end function
564
583
  function Duck(name as string, age as integer)
@@ -587,13 +606,15 @@ describe('BrsFile BrighterScript classes', () => {
587
606
  end function
588
607
  end class
589
608
  `, `
609
+ sub __Creature_method_new(name as string)
610
+ end sub
611
+ function __Creature_method_sayHello(text)
612
+ ? text
613
+ end function
590
614
  function __Creature_builder()
591
615
  instance = {}
592
- instance.new = sub(name as string)
593
- end sub
594
- instance.sayHello = function(text)
595
- ? text
596
- end function
616
+ instance.new = __Creature_method_new
617
+ instance.sayHello = __Creature_method_sayHello
597
618
  return instance
598
619
  end function
599
620
  function Creature(name as string)
@@ -601,19 +622,21 @@ describe('BrsFile BrighterScript classes', () => {
601
622
  instance.new(name)
602
623
  return instance
603
624
  end function
625
+ sub __Duck_method_new(name as string)
626
+ m.super0_new(name)
627
+ end sub
628
+ function __Duck_method_sayHello(text)
629
+ text = "The duck says " + text
630
+ if text <> invalid
631
+ m.super0_sayHello(text)
632
+ end if
633
+ end function
604
634
  function __Duck_builder()
605
635
  instance = __Creature_builder()
606
636
  instance.super0_new = instance.new
607
- instance.new = sub(name as string)
608
- m.super0_new(name)
609
- end sub
637
+ instance.new = __Duck_method_new
610
638
  instance.super0_sayHello = instance.sayHello
611
- instance.sayHello = function(text)
612
- text = "The duck says " + text
613
- if text <> invalid
614
- m.super0_sayHello(text)
615
- end if
616
- end function
639
+ instance.sayHello = __Duck_method_sayHello
617
640
  return instance
618
641
  end function
619
642
  function Duck(name as string)
@@ -687,10 +710,11 @@ describe('BrsFile BrighterScript classes', () => {
687
710
  end sub
688
711
  end class
689
712
  `, `
713
+ sub __Parent_method_new()
714
+ end sub
690
715
  function __Parent_builder()
691
716
  instance = {}
692
- instance.new = sub()
693
- end sub
717
+ instance.new = __Parent_method_new
694
718
  return instance
695
719
  end function
696
720
  function Parent()
@@ -698,12 +722,13 @@ describe('BrsFile BrighterScript classes', () => {
698
722
  instance.new()
699
723
  return instance
700
724
  end function
725
+ sub __Child_method_new()
726
+ m.super0_new()
727
+ end sub
701
728
  function __Child_builder()
702
729
  instance = __Parent_builder()
703
730
  instance.super0_new = instance.new
704
- instance.new = sub()
705
- m.super0_new()
706
- end sub
731
+ instance.new = __Child_method_new
707
732
  return instance
708
733
  end function
709
734
  function Child()
@@ -724,11 +749,12 @@ describe('BrsFile BrighterScript classes', () => {
724
749
  name = "Bob"
725
750
  end class
726
751
  `, `
752
+ sub __Person_method_new()
753
+ m.name = "Bob"
754
+ end sub
727
755
  function __Person_builder()
728
756
  instance = {}
729
- instance.new = sub()
730
- m.name = "Bob"
731
- end sub
757
+ instance.new = __Person_method_new
732
758
  return instance
733
759
  end function
734
760
  function Person()
@@ -783,15 +809,17 @@ describe('BrsFile BrighterScript classes', () => {
783
809
  '> Waddling...\\nDewey moved 2 meters\\nFell over...I'm new at this
784
810
  end sub
785
811
  `, `
812
+ sub __Animal_method_new(name as string)
813
+ m.name = invalid
814
+ m.name = name
815
+ end sub
816
+ sub __Animal_method_move(distanceInMeters as integer)
817
+ print m.name + " moved " + distanceInMeters.ToStr() + " meters"
818
+ end sub
786
819
  function __Animal_builder()
787
820
  instance = {}
788
- instance.new = sub(name as string)
789
- m.name = invalid
790
- m.name = name
791
- end sub
792
- instance.move = sub(distanceInMeters as integer)
793
- print m.name + " moved " + distanceInMeters.ToStr() + " meters"
794
- end sub
821
+ instance.new = __Animal_method_new
822
+ instance.move = __Animal_method_move
795
823
  return instance
796
824
  end function
797
825
  function Animal(name as string)
@@ -799,17 +827,19 @@ describe('BrsFile BrighterScript classes', () => {
799
827
  instance.new(name)
800
828
  return instance
801
829
  end function
830
+ sub __Duck_method_new(name as string)
831
+ m.super0_new(name)
832
+ end sub
833
+ sub __Duck_method_move(distanceInMeters as integer)
834
+ print "Waddling..."
835
+ m.super0_move(distanceInMeters)
836
+ end sub
802
837
  function __Duck_builder()
803
838
  instance = __Animal_builder()
804
839
  instance.super0_new = instance.new
805
- instance.new = sub(name as string)
806
- m.super0_new(name)
807
- end sub
840
+ instance.new = __Duck_method_new
808
841
  instance.super0_move = instance.move
809
- instance.move = sub(distanceInMeters as integer)
810
- print "Waddling..."
811
- m.super0_move(distanceInMeters)
812
- end sub
842
+ instance.move = __Duck_method_move
813
843
  return instance
814
844
  end function
815
845
  function Duck(name as string)
@@ -817,17 +847,19 @@ describe('BrsFile BrighterScript classes', () => {
817
847
  instance.new(name)
818
848
  return instance
819
849
  end function
850
+ sub __BabyDuck_method_new(name as string)
851
+ m.super1_new(name)
852
+ end sub
853
+ sub __BabyDuck_method_move(distanceInMeters as integer)
854
+ m.super1_move(distanceInMeters)
855
+ print "Fell over...I'm new at this"
856
+ end sub
820
857
  function __BabyDuck_builder()
821
858
  instance = __Duck_builder()
822
859
  instance.super1_new = instance.new
823
- instance.new = sub(name as string)
824
- m.super1_new(name)
825
- end sub
860
+ instance.new = __BabyDuck_method_new
826
861
  instance.super1_move = instance.move
827
- instance.move = sub(distanceInMeters as integer)
828
- m.super1_move(distanceInMeters)
829
- print "Fell over...I'm new at this"
830
- end sub
862
+ instance.move = __BabyDuck_method_move
831
863
  return instance
832
864
  end function
833
865
  function BabyDuck(name as string)
@@ -864,13 +896,15 @@ describe('BrsFile BrighterScript classes', () => {
864
896
  end sub
865
897
  end class
866
898
  `, `
899
+ sub __Duck_method_new()
900
+ end sub
901
+ sub __Duck_method_walk(meters as integer)
902
+ print "Walked " + meters.ToStr() + " meters"
903
+ end sub
867
904
  function __Duck_builder()
868
905
  instance = {}
869
- instance.new = sub()
870
- end sub
871
- instance.walk = sub(meters as integer)
872
- print "Walked " + meters.ToStr() + " meters"
873
- end sub
906
+ instance.new = __Duck_method_new
907
+ instance.walk = __Duck_method_walk
874
908
  return instance
875
909
  end function
876
910
  function Duck()
@@ -878,17 +912,19 @@ describe('BrsFile BrighterScript classes', () => {
878
912
  instance.new()
879
913
  return instance
880
914
  end function
915
+ sub __BabyDuck_method_new()
916
+ m.super0_new()
917
+ end sub
918
+ sub __BabyDuck_method_walk(meters as integer)
919
+ print "Tripped"
920
+ m.super0_walk(meters)
921
+ end sub
881
922
  function __BabyDuck_builder()
882
923
  instance = __Duck_builder()
883
924
  instance.super0_new = instance.new
884
- instance.new = sub()
885
- m.super0_new()
886
- end sub
925
+ instance.new = __BabyDuck_method_new
887
926
  instance.super0_walk = instance.walk
888
- instance.walk = sub(meters as integer)
889
- print "Tripped"
890
- m.super0_walk(meters)
891
- end sub
927
+ instance.walk = __BabyDuck_method_walk
892
928
  return instance
893
929
  end function
894
930
  function BabyDuck()
@@ -910,11 +946,12 @@ describe('BrsFile BrighterScript classes', () => {
910
946
  end enum
911
947
  end namespace
912
948
  `, `
949
+ sub __MyNS_HasEnumKlass_method_new()
950
+ m.enumValue = "A"
951
+ end sub
913
952
  function __MyNS_HasEnumKlass_builder()
914
953
  instance = {}
915
- instance.new = sub()
916
- m.enumValue = "A"
917
- end sub
954
+ instance.new = __MyNS_HasEnumKlass_method_new
918
955
  return instance
919
956
  end function
920
957
  function MyNS_HasEnumKlass()
@@ -943,12 +980,13 @@ describe('BrsFile BrighterScript classes', () => {
943
980
  end enum
944
981
  end namespace
945
982
  `, `
983
+ sub __MyNS_SubKlass_method_new()
984
+ m.super0_new("B")
985
+ end sub
946
986
  function __MyNS_SubKlass_builder()
947
987
  instance = __MyNS_SuperKlass_builder()
948
988
  instance.super0_new = instance.new
949
- instance.new = sub()
950
- m.super0_new("B")
951
- end sub
989
+ instance.new = __MyNS_SubKlass_method_new
952
990
  return instance
953
991
  end function
954
992
  function MyNS_SubKlass()
@@ -956,11 +994,12 @@ describe('BrsFile BrighterScript classes', () => {
956
994
  instance.new()
957
995
  return instance
958
996
  end function
997
+ sub __MyNS_SuperKlass_method_new(enumVal)
998
+ print enumVal
999
+ end sub
959
1000
  function __MyNS_SuperKlass_builder()
960
1001
  instance = {}
961
- instance.new = sub(enumVal)
962
- print enumVal
963
- end sub
1002
+ instance.new = __MyNS_SuperKlass_method_new
964
1003
  return instance
965
1004
  end function
966
1005
  function MyNS_SuperKlass(enumVal)
@@ -986,16 +1025,17 @@ describe('BrsFile BrighterScript classes', () => {
986
1025
  end enum
987
1026
  end namespace
988
1027
  `, `
1028
+ sub __MyNS_HasEnumKlass_method_new()
1029
+ m.myArray = [
1030
+ true
1031
+ true
1032
+ ]
1033
+ m.myArray[0] = true
1034
+ m.myArray[1] = false
1035
+ end sub
989
1036
  function __MyNS_HasEnumKlass_builder()
990
1037
  instance = {}
991
- instance.new = sub()
992
- m.myArray = [
993
- true
994
- true
995
- ]
996
- m.myArray[0] = true
997
- m.myArray[1] = false
998
- end sub
1038
+ instance.new = __MyNS_HasEnumKlass_method_new
999
1039
  return instance
1000
1040
  end function
1001
1041
  function MyNS_HasEnumKlass()
@@ -1021,16 +1061,17 @@ describe('BrsFile BrighterScript classes', () => {
1021
1061
  end enum
1022
1062
  end namespace
1023
1063
  `, `
1064
+ sub __MyNS_HasEnumKlass_method_new()
1065
+ m.myArray = [
1066
+ true
1067
+ true
1068
+ ]
1069
+ m.myArray[0] = true
1070
+ m.myArray[1] = false
1071
+ end sub
1024
1072
  function __MyNS_HasEnumKlass_builder()
1025
1073
  instance = {}
1026
- instance.new = sub()
1027
- m.myArray = [
1028
- true
1029
- true
1030
- ]
1031
- m.myArray[0] = true
1032
- m.myArray[1] = false
1033
- end sub
1074
+ instance.new = __MyNS_HasEnumKlass_method_new
1034
1075
  return instance
1035
1076
  end function
1036
1077
  function MyNS_HasEnumKlass()
@@ -1135,13 +1176,15 @@ describe('BrsFile BrighterScript classes', () => {
1135
1176
  fsExtra.emptyDirSync(testHelpers_spec_2.stagingDir);
1136
1177
  await program.transpile([], testHelpers_spec_2.stagingDir);
1137
1178
  (0, chai_config_spec_1.expect)(fsExtra.readFileSync((0, util_1.standardizePath) `${testHelpers_spec_2.stagingDir}/source/lib.brs`).toString().trimEnd()).to.eql((0, testHelpers_spec_1.trim) `
1179
+ sub __Being_method_new()
1180
+ end sub
1181
+ function __Being_method_think()
1182
+ print "thinking..."
1183
+ end function
1138
1184
  function __Being_builder()
1139
1185
  instance = {}
1140
- instance.new = sub()
1141
- end sub
1142
- instance.think = function()
1143
- print "thinking..."
1144
- end function
1186
+ instance.new = __Being_method_new
1187
+ instance.think = __Being_method_think
1145
1188
  return instance
1146
1189
  end function
1147
1190
  function Being()
@@ -1149,15 +1192,17 @@ describe('BrsFile BrighterScript classes', () => {
1149
1192
  instance.new()
1150
1193
  return instance
1151
1194
  end function
1195
+ sub __Human_method_new()
1196
+ m.super0_new()
1197
+ end sub
1198
+ function __Human_method_think()
1199
+ m.super0_think()
1200
+ end function
1152
1201
  function __Human_builder()
1153
1202
  instance = __Being_builder()
1154
1203
  instance.super0_new = instance.new
1155
- instance.new = sub()
1156
- m.super0_new()
1157
- end sub
1158
- instance.think = function()
1159
- m.super0_think()
1160
- end function
1204
+ instance.new = __Human_method_new
1205
+ instance.think = __Human_method_think
1161
1206
  return instance
1162
1207
  end function
1163
1208
  function Human()
@@ -1578,12 +1623,13 @@ describe('BrsFile BrighterScript classes', () => {
1578
1623
  end class
1579
1624
  end namespace
1580
1625
  `, `
1626
+ sub __App_ClassC_method_new()
1627
+ m.super1_new()
1628
+ end sub
1581
1629
  function __App_ClassC_builder()
1582
1630
  instance = __App_ClassB_builder()
1583
1631
  instance.super1_new = instance.new
1584
- instance.new = sub()
1585
- m.super1_new()
1586
- end sub
1632
+ instance.new = __App_ClassC_method_new
1587
1633
  return instance
1588
1634
  end function
1589
1635
  function App_ClassC()
@@ -1604,12 +1650,13 @@ describe('BrsFile BrighterScript classes', () => {
1604
1650
  end class
1605
1651
  end namespace
1606
1652
  `, `
1653
+ sub __App_ClassB_method_new()
1654
+ m.super0_new()
1655
+ end sub
1607
1656
  function __App_ClassB_builder()
1608
1657
  instance = __ClassA_builder()
1609
1658
  instance.super0_new = instance.new
1610
- instance.new = sub()
1611
- m.super0_new()
1612
- end sub
1659
+ instance.new = __App_ClassB_method_new
1613
1660
  return instance
1614
1661
  end function
1615
1662
  function App_ClassB()
@@ -1672,11 +1719,12 @@ describe('BrsFile BrighterScript classes', () => {
1672
1719
  end class
1673
1720
  end namespace
1674
1721
  `, `
1722
+ sub __App_CoreClass_method_new()
1723
+ print "CoreClass.new()"
1724
+ end sub
1675
1725
  function __App_CoreClass_builder()
1676
1726
  instance = {}
1677
- instance.new = sub()
1678
- print "CoreClass.new()"
1679
- end sub
1727
+ instance.new = __App_CoreClass_method_new
1680
1728
  return instance
1681
1729
  end function
1682
1730
  function App_CoreClass()
@@ -1684,12 +1732,13 @@ describe('BrsFile BrighterScript classes', () => {
1684
1732
  instance.new()
1685
1733
  return instance
1686
1734
  end function
1735
+ sub __App_Logic_FirstClass_method_new()
1736
+ m.super0_new()
1737
+ end sub
1687
1738
  function __App_Logic_FirstClass_builder()
1688
1739
  instance = __App_CoreClass_builder()
1689
1740
  instance.super0_new = instance.new
1690
- instance.new = sub()
1691
- m.super0_new()
1692
- end sub
1741
+ instance.new = __App_Logic_FirstClass_method_new
1693
1742
  return instance
1694
1743
  end function
1695
1744
  function App_Logic_FirstClass()
@@ -1697,12 +1746,13 @@ describe('BrsFile BrighterScript classes', () => {
1697
1746
  instance.new()
1698
1747
  return instance
1699
1748
  end function
1749
+ sub __App_Logic_SecondClass_method_new()
1750
+ m.super1_new()
1751
+ end sub
1700
1752
  function __App_Logic_SecondClass_builder()
1701
1753
  instance = __App_Logic_FirstClass_builder()
1702
1754
  instance.super1_new = instance.new
1703
- instance.new = sub()
1704
- m.super1_new()
1705
- end sub
1755
+ instance.new = __App_Logic_SecondClass_method_new
1706
1756
  return instance
1707
1757
  end function
1708
1758
  function App_Logic_SecondClass()
@@ -1710,12 +1760,13 @@ describe('BrsFile BrighterScript classes', () => {
1710
1760
  instance.new()
1711
1761
  return instance
1712
1762
  end function
1763
+ sub __App_OtherLogic_FinalClass_method_new()
1764
+ m.super2_new()
1765
+ end sub
1713
1766
  function __App_OtherLogic_FinalClass_builder()
1714
1767
  instance = __App_Logic_SecondClass_builder()
1715
1768
  instance.super2_new = instance.new
1716
- instance.new = sub()
1717
- m.super2_new()
1718
- end sub
1769
+ instance.new = __App_OtherLogic_FinalClass_method_new
1719
1770
  return instance
1720
1771
  end function
1721
1772
  function App_OtherLogic_FinalClass()