typescript-to-lua 1.23.0 → 1.24.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.
- package/dist/LuaLib.d.ts +2 -0
- package/dist/LuaLib.js +2 -0
- package/dist/lualib/5.0/Await.lua +42 -42
- package/dist/lualib/5.0/DescriptorGet.lua +24 -0
- package/dist/lualib/5.0/DescriptorSet.lua +30 -0
- package/dist/lualib/5.0/Promise.lua +83 -109
- package/dist/lualib/5.0/SetDescriptor.lua +12 -45
- package/dist/lualib/5.0/lualib_bundle.lua +180 -181
- package/dist/lualib/5.0/lualib_module_info.json +14 -4
- package/dist/lualib/universal/Await.lua +42 -42
- package/dist/lualib/universal/DescriptorGet.lua +24 -0
- package/dist/lualib/universal/DescriptorSet.lua +30 -0
- package/dist/lualib/universal/Promise.lua +83 -109
- package/dist/lualib/universal/SetDescriptor.lua +12 -45
- package/dist/lualib/universal/lualib_bundle.lua +180 -181
- package/dist/lualib/universal/lualib_module_info.json +14 -4
- package/dist/transformation/visitors/access.js +6 -0
- package/dist/transformation/visitors/binary-expression/assignments.js +14 -4
- package/package.json +1 -1
|
@@ -592,6 +592,12 @@ local function __TS__ArrayWith(self, index, value)
|
|
|
592
592
|
return copy
|
|
593
593
|
end
|
|
594
594
|
|
|
595
|
+
local function __TS__New(target, ...)
|
|
596
|
+
local instance = setmetatable({}, target.prototype)
|
|
597
|
+
instance:____constructor(unpack(arg))
|
|
598
|
+
return instance
|
|
599
|
+
end
|
|
600
|
+
|
|
595
601
|
local function __TS__InstanceOf(obj, classTbl)
|
|
596
602
|
if type(classTbl) ~= "table" then
|
|
597
603
|
error("Right-hand side of 'instanceof' is not an object", 0)
|
|
@@ -611,12 +617,6 @@ local function __TS__InstanceOf(obj, classTbl)
|
|
|
611
617
|
return false
|
|
612
618
|
end
|
|
613
619
|
|
|
614
|
-
local function __TS__New(target, ...)
|
|
615
|
-
local instance = setmetatable({}, target.prototype)
|
|
616
|
-
instance:____constructor(unpack(arg))
|
|
617
|
-
return instance
|
|
618
|
-
end
|
|
619
|
-
|
|
620
620
|
local function __TS__Class(self)
|
|
621
621
|
local c = {prototype = {}}
|
|
622
622
|
c.prototype.__index = c.prototype
|
|
@@ -624,35 +624,27 @@ local function __TS__Class(self)
|
|
|
624
624
|
return c
|
|
625
625
|
end
|
|
626
626
|
|
|
627
|
-
local function __TS__FunctionBind(fn, ...)
|
|
628
|
-
local boundArgs = arg
|
|
629
|
-
return function(____, ...)
|
|
630
|
-
local args = arg
|
|
631
|
-
__TS__ArrayUnshift(
|
|
632
|
-
args,
|
|
633
|
-
unpack(boundArgs)
|
|
634
|
-
)
|
|
635
|
-
return fn(unpack(args))
|
|
636
|
-
end
|
|
637
|
-
end
|
|
638
|
-
|
|
639
627
|
local __TS__Promise
|
|
640
628
|
do
|
|
641
|
-
local function
|
|
629
|
+
local function makeDeferredPromiseFactory()
|
|
642
630
|
local resolve
|
|
643
631
|
local reject
|
|
644
|
-
local
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
632
|
+
local function executor(____, res, rej)
|
|
633
|
+
resolve = res
|
|
634
|
+
reject = rej
|
|
635
|
+
end
|
|
636
|
+
return function()
|
|
637
|
+
local promise = __TS__New(__TS__Promise, executor)
|
|
638
|
+
return promise, resolve, reject
|
|
639
|
+
end
|
|
640
|
+
end
|
|
641
|
+
local makeDeferredPromise = makeDeferredPromiseFactory()
|
|
642
|
+
local function isPromiseLike(value)
|
|
643
|
+
return __TS__InstanceOf(value, __TS__Promise)
|
|
652
644
|
end
|
|
653
|
-
local function
|
|
654
|
-
return __TS__InstanceOf(thing, __TS__Promise)
|
|
645
|
+
local function doNothing(self)
|
|
655
646
|
end
|
|
647
|
+
local ____pcall = _G.pcall
|
|
656
648
|
__TS__Promise = __TS__Class()
|
|
657
649
|
__TS__Promise.name = "__TS__Promise"
|
|
658
650
|
function __TS__Promise.prototype.____constructor(self, executor)
|
|
@@ -660,206 +652,176 @@ do
|
|
|
660
652
|
self.fulfilledCallbacks = {}
|
|
661
653
|
self.rejectedCallbacks = {}
|
|
662
654
|
self.finallyCallbacks = {}
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
end
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
__TS__FunctionBind(self.reject, self)
|
|
672
|
-
)
|
|
673
|
-
end)
|
|
674
|
-
if not ____try then
|
|
675
|
-
____catch(____hasReturned)
|
|
676
|
-
end
|
|
655
|
+
local success, ____error = ____pcall(
|
|
656
|
+
executor,
|
|
657
|
+
nil,
|
|
658
|
+
function(____, v) return self:resolve(v) end,
|
|
659
|
+
function(____, err) return self:reject(err) end
|
|
660
|
+
)
|
|
661
|
+
if not success then
|
|
662
|
+
self:reject(____error)
|
|
677
663
|
end
|
|
678
664
|
end
|
|
679
|
-
function __TS__Promise.resolve(
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
)
|
|
665
|
+
function __TS__Promise.resolve(value)
|
|
666
|
+
if __TS__InstanceOf(value, __TS__Promise) then
|
|
667
|
+
return value
|
|
668
|
+
end
|
|
669
|
+
local promise = __TS__New(__TS__Promise, doNothing)
|
|
685
670
|
promise.state = 1
|
|
686
|
-
promise.value =
|
|
671
|
+
promise.value = value
|
|
687
672
|
return promise
|
|
688
673
|
end
|
|
689
674
|
function __TS__Promise.reject(reason)
|
|
690
|
-
local promise = __TS__New(
|
|
691
|
-
__TS__Promise,
|
|
692
|
-
function()
|
|
693
|
-
end
|
|
694
|
-
)
|
|
675
|
+
local promise = __TS__New(__TS__Promise, doNothing)
|
|
695
676
|
promise.state = 2
|
|
696
677
|
promise.rejectionReason = reason
|
|
697
678
|
return promise
|
|
698
679
|
end
|
|
699
680
|
__TS__Promise.prototype["then"] = function(self, onFulfilled, onRejected)
|
|
700
|
-
local
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
if isFulfilled then
|
|
711
|
-
internalCallback(nil, self.value)
|
|
712
|
-
end
|
|
713
|
-
else
|
|
714
|
-
local ____self_fulfilledCallbacks_2 = self.fulfilledCallbacks
|
|
715
|
-
____self_fulfilledCallbacks_2[table.getn(____self_fulfilledCallbacks_2) + 1] = function(____, v) return resolve(nil, v) end
|
|
716
|
-
end
|
|
717
|
-
if onRejected then
|
|
718
|
-
local internalCallback = self:createPromiseResolvingCallback(onRejected, resolve, reject)
|
|
719
|
-
local ____self_rejectedCallbacks_3 = self.rejectedCallbacks
|
|
720
|
-
____self_rejectedCallbacks_3[table.getn(____self_rejectedCallbacks_3) + 1] = internalCallback
|
|
721
|
-
if isRejected then
|
|
722
|
-
internalCallback(nil, self.rejectionReason)
|
|
723
|
-
end
|
|
724
|
-
else
|
|
725
|
-
local ____self_rejectedCallbacks_4 = self.rejectedCallbacks
|
|
726
|
-
____self_rejectedCallbacks_4[table.getn(____self_rejectedCallbacks_4) + 1] = function(____, err) return reject(nil, err) end
|
|
727
|
-
end
|
|
728
|
-
if isFulfilled then
|
|
729
|
-
resolve(nil, self.value)
|
|
681
|
+
local promise, resolve, reject = makeDeferredPromise()
|
|
682
|
+
self:addCallbacks(
|
|
683
|
+
onFulfilled and self:createPromiseResolvingCallback(onFulfilled, resolve, reject) or resolve,
|
|
684
|
+
onRejected and self:createPromiseResolvingCallback(onRejected, resolve, reject) or reject
|
|
685
|
+
)
|
|
686
|
+
return promise
|
|
687
|
+
end
|
|
688
|
+
function __TS__Promise.prototype.addCallbacks(self, fulfilledCallback, rejectedCallback)
|
|
689
|
+
if self.state == 1 then
|
|
690
|
+
return fulfilledCallback(nil, self.value)
|
|
730
691
|
end
|
|
731
|
-
if
|
|
732
|
-
|
|
692
|
+
if self.state == 2 then
|
|
693
|
+
return rejectedCallback(nil, self.rejectionReason)
|
|
733
694
|
end
|
|
734
|
-
|
|
695
|
+
local ____self_fulfilledCallbacks_0 = self.fulfilledCallbacks
|
|
696
|
+
____self_fulfilledCallbacks_0[table.getn(____self_fulfilledCallbacks_0) + 1] = fulfilledCallback
|
|
697
|
+
local ____self_rejectedCallbacks_1 = self.rejectedCallbacks
|
|
698
|
+
____self_rejectedCallbacks_1[table.getn(____self_rejectedCallbacks_1) + 1] = rejectedCallback
|
|
735
699
|
end
|
|
736
700
|
function __TS__Promise.prototype.catch(self, onRejected)
|
|
737
701
|
return self["then"](self, nil, onRejected)
|
|
738
702
|
end
|
|
739
703
|
function __TS__Promise.prototype.finally(self, onFinally)
|
|
740
704
|
if onFinally then
|
|
741
|
-
local
|
|
742
|
-
|
|
705
|
+
local ____self_finallyCallbacks_2 = self.finallyCallbacks
|
|
706
|
+
____self_finallyCallbacks_2[table.getn(____self_finallyCallbacks_2) + 1] = onFinally
|
|
743
707
|
if self.state ~= 0 then
|
|
744
708
|
onFinally(nil)
|
|
745
709
|
end
|
|
746
710
|
end
|
|
747
711
|
return self
|
|
748
712
|
end
|
|
749
|
-
function __TS__Promise.prototype.resolve(self,
|
|
750
|
-
if
|
|
751
|
-
|
|
752
|
-
data,
|
|
713
|
+
function __TS__Promise.prototype.resolve(self, value)
|
|
714
|
+
if isPromiseLike(value) then
|
|
715
|
+
return value:addCallbacks(
|
|
753
716
|
function(____, v) return self:resolve(v) end,
|
|
754
717
|
function(____, err) return self:reject(err) end
|
|
755
718
|
)
|
|
756
|
-
return
|
|
757
719
|
end
|
|
758
720
|
if self.state == 0 then
|
|
759
721
|
self.state = 1
|
|
760
|
-
self.value =
|
|
761
|
-
|
|
762
|
-
callback(nil, data)
|
|
763
|
-
end
|
|
764
|
-
for ____, callback in ipairs(self.finallyCallbacks) do
|
|
765
|
-
callback(nil)
|
|
766
|
-
end
|
|
722
|
+
self.value = value
|
|
723
|
+
return self:invokeCallbacks(self.fulfilledCallbacks, value)
|
|
767
724
|
end
|
|
768
725
|
end
|
|
769
726
|
function __TS__Promise.prototype.reject(self, reason)
|
|
770
727
|
if self.state == 0 then
|
|
771
728
|
self.state = 2
|
|
772
729
|
self.rejectionReason = reason
|
|
773
|
-
|
|
774
|
-
|
|
730
|
+
return self:invokeCallbacks(self.rejectedCallbacks, reason)
|
|
731
|
+
end
|
|
732
|
+
end
|
|
733
|
+
function __TS__Promise.prototype.invokeCallbacks(self, callbacks, value)
|
|
734
|
+
local callbacksLength = table.getn(callbacks)
|
|
735
|
+
local finallyCallbacks = self.finallyCallbacks
|
|
736
|
+
local finallyCallbacksLength = table.getn(finallyCallbacks)
|
|
737
|
+
if callbacksLength ~= 0 then
|
|
738
|
+
for i = 1, callbacksLength - 1 do
|
|
739
|
+
callbacks[i](callbacks, value)
|
|
775
740
|
end
|
|
776
|
-
|
|
777
|
-
|
|
741
|
+
if finallyCallbacksLength == 0 then
|
|
742
|
+
return callbacks[callbacksLength](callbacks, value)
|
|
778
743
|
end
|
|
744
|
+
callbacks[callbacksLength](callbacks, value)
|
|
745
|
+
end
|
|
746
|
+
if finallyCallbacksLength ~= 0 then
|
|
747
|
+
for i = 1, finallyCallbacksLength - 1 do
|
|
748
|
+
finallyCallbacks[i](finallyCallbacks)
|
|
749
|
+
end
|
|
750
|
+
return finallyCallbacks[finallyCallbacksLength](finallyCallbacks)
|
|
779
751
|
end
|
|
780
752
|
end
|
|
781
753
|
function __TS__Promise.prototype.createPromiseResolvingCallback(self, f, resolve, reject)
|
|
782
754
|
return function(____, value)
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
end
|
|
787
|
-
local ____try, ____hasReturned = pcall(function()
|
|
788
|
-
self:handleCallbackData(
|
|
789
|
-
f(nil, value),
|
|
790
|
-
resolve,
|
|
791
|
-
reject
|
|
792
|
-
)
|
|
793
|
-
end)
|
|
794
|
-
if not ____try then
|
|
795
|
-
____catch(____hasReturned)
|
|
796
|
-
end
|
|
755
|
+
local success, resultOrError = ____pcall(f, nil, value)
|
|
756
|
+
if not success then
|
|
757
|
+
return reject(nil, resultOrError)
|
|
797
758
|
end
|
|
759
|
+
return self:handleCallbackValue(resultOrError, resolve, reject)
|
|
798
760
|
end
|
|
799
761
|
end
|
|
800
|
-
function __TS__Promise.prototype.
|
|
801
|
-
if isPromiseLike(
|
|
802
|
-
local nextpromise =
|
|
762
|
+
function __TS__Promise.prototype.handleCallbackValue(self, value, resolve, reject)
|
|
763
|
+
if isPromiseLike(value) then
|
|
764
|
+
local nextpromise = value
|
|
803
765
|
if nextpromise.state == 1 then
|
|
804
|
-
resolve(nil, nextpromise.value)
|
|
766
|
+
return resolve(nil, nextpromise.value)
|
|
805
767
|
elseif nextpromise.state == 2 then
|
|
806
|
-
reject(nil, nextpromise.rejectionReason)
|
|
768
|
+
return reject(nil, nextpromise.rejectionReason)
|
|
807
769
|
else
|
|
808
|
-
|
|
770
|
+
return nextpromise:addCallbacks(resolve, reject)
|
|
809
771
|
end
|
|
810
772
|
else
|
|
811
|
-
resolve(nil,
|
|
773
|
+
return resolve(nil, value)
|
|
812
774
|
end
|
|
813
775
|
end
|
|
814
776
|
end
|
|
815
777
|
|
|
816
|
-
local
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
778
|
+
local __TS__AsyncAwaiter, __TS__Await
|
|
779
|
+
do
|
|
780
|
+
local cocreate = coroutine.create
|
|
781
|
+
local coresume = coroutine.resume
|
|
782
|
+
local costatus = coroutine.status
|
|
783
|
+
local coyield = coroutine.yield
|
|
784
|
+
function __TS__AsyncAwaiter(generator)
|
|
785
|
+
return __TS__New(
|
|
786
|
+
__TS__Promise,
|
|
787
|
+
function(____, resolve, reject)
|
|
788
|
+
local fulfilled, step, resolved, asyncCoroutine
|
|
789
|
+
function fulfilled(self, value)
|
|
790
|
+
local success, resultOrError = coresume(asyncCoroutine, value)
|
|
791
|
+
if success then
|
|
792
|
+
return step(resultOrError)
|
|
793
|
+
end
|
|
794
|
+
return reject(nil, resultOrError)
|
|
830
795
|
end
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
796
|
+
function step(result)
|
|
797
|
+
if resolved then
|
|
798
|
+
return
|
|
799
|
+
end
|
|
800
|
+
if costatus(asyncCoroutine) == "dead" then
|
|
801
|
+
return resolve(nil, result)
|
|
802
|
+
end
|
|
803
|
+
return __TS__Promise.resolve(result):addCallbacks(fulfilled, reject)
|
|
835
804
|
end
|
|
836
|
-
|
|
837
|
-
|
|
805
|
+
resolved = false
|
|
806
|
+
asyncCoroutine = cocreate(generator)
|
|
807
|
+
local success, resultOrError = coresume(
|
|
808
|
+
asyncCoroutine,
|
|
809
|
+
function(____, v)
|
|
810
|
+
resolved = true
|
|
811
|
+
return __TS__Promise.resolve(v):addCallbacks(resolve, reject)
|
|
812
|
+
end
|
|
813
|
+
)
|
|
814
|
+
if success then
|
|
815
|
+
return step(resultOrError)
|
|
838
816
|
else
|
|
839
|
-
|
|
840
|
-
____self_0["then"](____self_0, fulfilled, reject)
|
|
817
|
+
return reject(nil, resultOrError)
|
|
841
818
|
end
|
|
842
819
|
end
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
resolved = true
|
|
849
|
-
local ____self_1 = adopt(nil, v)
|
|
850
|
-
____self_1["then"](____self_1, resolve, reject)
|
|
851
|
-
end
|
|
852
|
-
)
|
|
853
|
-
if success then
|
|
854
|
-
step(nil, resultOrError)
|
|
855
|
-
else
|
|
856
|
-
reject(nil, resultOrError)
|
|
857
|
-
end
|
|
858
|
-
end
|
|
859
|
-
)
|
|
860
|
-
end
|
|
861
|
-
local function __TS__Await(thing)
|
|
862
|
-
return coroutine.yield(thing)
|
|
820
|
+
)
|
|
821
|
+
end
|
|
822
|
+
function __TS__Await(thing)
|
|
823
|
+
return coyield(thing)
|
|
824
|
+
end
|
|
863
825
|
end
|
|
864
826
|
|
|
865
827
|
local function __TS__ClassExtends(target, base)
|
|
@@ -957,20 +919,17 @@ local function __TS__ObjectGetOwnPropertyDescriptor(object, key)
|
|
|
957
919
|
return rawget(metatable, "_descriptors")[key]
|
|
958
920
|
end
|
|
959
921
|
|
|
960
|
-
local
|
|
922
|
+
local __TS__DescriptorGet
|
|
961
923
|
do
|
|
962
|
-
local
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
return value
|
|
966
|
-
end
|
|
967
|
-
local metatable = getmetatable(self)
|
|
924
|
+
local getmetatable = _G.getmetatable
|
|
925
|
+
local ____rawget = _G.rawget
|
|
926
|
+
function __TS__DescriptorGet(self, metatable, key)
|
|
968
927
|
while metatable do
|
|
969
|
-
local rawResult =
|
|
928
|
+
local rawResult = ____rawget(metatable, key)
|
|
970
929
|
if rawResult ~= nil then
|
|
971
930
|
return rawResult
|
|
972
931
|
end
|
|
973
|
-
local descriptors =
|
|
932
|
+
local descriptors = ____rawget(metatable, "_descriptors")
|
|
974
933
|
if descriptors then
|
|
975
934
|
local descriptor = descriptors[key]
|
|
976
935
|
if descriptor ~= nil then
|
|
@@ -983,10 +942,16 @@ do
|
|
|
983
942
|
metatable = getmetatable(metatable)
|
|
984
943
|
end
|
|
985
944
|
end
|
|
986
|
-
|
|
987
|
-
|
|
945
|
+
end
|
|
946
|
+
|
|
947
|
+
local __TS__DescriptorSet
|
|
948
|
+
do
|
|
949
|
+
local getmetatable = _G.getmetatable
|
|
950
|
+
local ____rawget = _G.rawget
|
|
951
|
+
local rawset = _G.rawset
|
|
952
|
+
function __TS__DescriptorSet(self, metatable, key, value)
|
|
988
953
|
while metatable do
|
|
989
|
-
local descriptors =
|
|
954
|
+
local descriptors = ____rawget(metatable, "_descriptors")
|
|
990
955
|
if descriptors then
|
|
991
956
|
local descriptor = descriptors[key]
|
|
992
957
|
if descriptor ~= nil then
|
|
@@ -1008,6 +973,26 @@ do
|
|
|
1008
973
|
end
|
|
1009
974
|
rawset(self, key, value)
|
|
1010
975
|
end
|
|
976
|
+
end
|
|
977
|
+
|
|
978
|
+
local __TS__SetDescriptor
|
|
979
|
+
do
|
|
980
|
+
local getmetatable = _G.getmetatable
|
|
981
|
+
local function descriptorIndex(self, key)
|
|
982
|
+
return __TS__DescriptorGet(
|
|
983
|
+
self,
|
|
984
|
+
getmetatable(self),
|
|
985
|
+
key
|
|
986
|
+
)
|
|
987
|
+
end
|
|
988
|
+
local function descriptorNewIndex(self, key, value)
|
|
989
|
+
return __TS__DescriptorSet(
|
|
990
|
+
self,
|
|
991
|
+
getmetatable(self),
|
|
992
|
+
key,
|
|
993
|
+
value
|
|
994
|
+
)
|
|
995
|
+
end
|
|
1011
996
|
function __TS__SetDescriptor(target, key, desc, isPrototype)
|
|
1012
997
|
if isPrototype == nil then
|
|
1013
998
|
isPrototype = false
|
|
@@ -1239,6 +1224,18 @@ local function __TS__DelegatedYield(iterable)
|
|
|
1239
1224
|
end
|
|
1240
1225
|
end
|
|
1241
1226
|
|
|
1227
|
+
local function __TS__FunctionBind(fn, ...)
|
|
1228
|
+
local boundArgs = arg
|
|
1229
|
+
return function(____, ...)
|
|
1230
|
+
local args = arg
|
|
1231
|
+
__TS__ArrayUnshift(
|
|
1232
|
+
args,
|
|
1233
|
+
unpack(boundArgs)
|
|
1234
|
+
)
|
|
1235
|
+
return fn(unpack(args))
|
|
1236
|
+
end
|
|
1237
|
+
end
|
|
1238
|
+
|
|
1242
1239
|
local function __TS__Unpack(list, i, j)
|
|
1243
1240
|
if i == 1 and j == nil then
|
|
1244
1241
|
return unpack(list)
|
|
@@ -2611,6 +2608,8 @@ return {
|
|
|
2611
2608
|
__TS__DecorateParam = __TS__DecorateParam,
|
|
2612
2609
|
__TS__Delete = __TS__Delete,
|
|
2613
2610
|
__TS__DelegatedYield = __TS__DelegatedYield,
|
|
2611
|
+
__TS__DescriptorGet = __TS__DescriptorGet,
|
|
2612
|
+
__TS__DescriptorSet = __TS__DescriptorSet,
|
|
2614
2613
|
Error = Error,
|
|
2615
2614
|
RangeError = RangeError,
|
|
2616
2615
|
ReferenceError = ReferenceError,
|
|
@@ -204,7 +204,6 @@
|
|
|
204
204
|
"__TS__Await"
|
|
205
205
|
],
|
|
206
206
|
"dependencies": [
|
|
207
|
-
"InstanceOf",
|
|
208
207
|
"Promise",
|
|
209
208
|
"New"
|
|
210
209
|
]
|
|
@@ -271,6 +270,16 @@
|
|
|
271
270
|
"Symbol"
|
|
272
271
|
]
|
|
273
272
|
},
|
|
273
|
+
"DescriptorGet": {
|
|
274
|
+
"exports": [
|
|
275
|
+
"__TS__DescriptorGet"
|
|
276
|
+
]
|
|
277
|
+
},
|
|
278
|
+
"DescriptorSet": {
|
|
279
|
+
"exports": [
|
|
280
|
+
"__TS__DescriptorSet"
|
|
281
|
+
]
|
|
282
|
+
},
|
|
274
283
|
"Error": {
|
|
275
284
|
"exports": [
|
|
276
285
|
"Error",
|
|
@@ -485,8 +494,7 @@
|
|
|
485
494
|
"Promise",
|
|
486
495
|
"New",
|
|
487
496
|
"InstanceOf",
|
|
488
|
-
"Class"
|
|
489
|
-
"FunctionBind"
|
|
497
|
+
"Class"
|
|
490
498
|
]
|
|
491
499
|
},
|
|
492
500
|
"PromiseAll": {
|
|
@@ -548,7 +556,9 @@
|
|
|
548
556
|
"__TS__SetDescriptor"
|
|
549
557
|
],
|
|
550
558
|
"dependencies": [
|
|
551
|
-
"CloneDescriptor"
|
|
559
|
+
"CloneDescriptor",
|
|
560
|
+
"DescriptorGet",
|
|
561
|
+
"DescriptorSet"
|
|
552
562
|
]
|
|
553
563
|
},
|
|
554
564
|
"SparseArrayNew": {
|
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
local
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
local __TS__AsyncAwaiter, __TS__Await
|
|
2
|
+
do
|
|
3
|
+
local cocreate = coroutine.create
|
|
4
|
+
local coresume = coroutine.resume
|
|
5
|
+
local costatus = coroutine.status
|
|
6
|
+
local coyield = coroutine.yield
|
|
7
|
+
function __TS__AsyncAwaiter(generator)
|
|
8
|
+
return __TS__New(
|
|
9
|
+
__TS__Promise,
|
|
10
|
+
function(____, resolve, reject)
|
|
11
|
+
local fulfilled, step, resolved, asyncCoroutine
|
|
12
|
+
function fulfilled(self, value)
|
|
13
|
+
local success, resultOrError = coresume(asyncCoroutine, value)
|
|
14
|
+
if success then
|
|
15
|
+
return step(resultOrError)
|
|
16
|
+
end
|
|
17
|
+
return reject(nil, resultOrError)
|
|
15
18
|
end
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
function step(result)
|
|
20
|
+
if resolved then
|
|
21
|
+
return
|
|
22
|
+
end
|
|
23
|
+
if costatus(asyncCoroutine) == "dead" then
|
|
24
|
+
return resolve(nil, result)
|
|
25
|
+
end
|
|
26
|
+
return __TS__Promise.resolve(result):addCallbacks(fulfilled, reject)
|
|
20
27
|
end
|
|
21
|
-
|
|
22
|
-
|
|
28
|
+
resolved = false
|
|
29
|
+
asyncCoroutine = cocreate(generator)
|
|
30
|
+
local success, resultOrError = coresume(
|
|
31
|
+
asyncCoroutine,
|
|
32
|
+
function(____, v)
|
|
33
|
+
resolved = true
|
|
34
|
+
return __TS__Promise.resolve(v):addCallbacks(resolve, reject)
|
|
35
|
+
end
|
|
36
|
+
)
|
|
37
|
+
if success then
|
|
38
|
+
return step(resultOrError)
|
|
23
39
|
else
|
|
24
|
-
|
|
25
|
-
____self_0["then"](____self_0, fulfilled, reject)
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
resolved = false
|
|
29
|
-
asyncCoroutine = coroutine.create(generator)
|
|
30
|
-
local success, resultOrError = coroutine.resume(
|
|
31
|
-
asyncCoroutine,
|
|
32
|
-
function(____, v)
|
|
33
|
-
resolved = true
|
|
34
|
-
local ____self_1 = adopt(nil, v)
|
|
35
|
-
____self_1["then"](____self_1, resolve, reject)
|
|
40
|
+
return reject(nil, resultOrError)
|
|
36
41
|
end
|
|
37
|
-
)
|
|
38
|
-
if success then
|
|
39
|
-
step(nil, resultOrError)
|
|
40
|
-
else
|
|
41
|
-
reject(nil, resultOrError)
|
|
42
42
|
end
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
)
|
|
44
|
+
end
|
|
45
|
+
function __TS__Await(thing)
|
|
46
|
+
return coyield(thing)
|
|
47
|
+
end
|
|
48
48
|
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
local __TS__DescriptorGet
|
|
2
|
+
do
|
|
3
|
+
local getmetatable = _G.getmetatable
|
|
4
|
+
local ____rawget = _G.rawget
|
|
5
|
+
function __TS__DescriptorGet(self, metatable, key)
|
|
6
|
+
while metatable do
|
|
7
|
+
local rawResult = ____rawget(metatable, key)
|
|
8
|
+
if rawResult ~= nil then
|
|
9
|
+
return rawResult
|
|
10
|
+
end
|
|
11
|
+
local descriptors = ____rawget(metatable, "_descriptors")
|
|
12
|
+
if descriptors then
|
|
13
|
+
local descriptor = descriptors[key]
|
|
14
|
+
if descriptor ~= nil then
|
|
15
|
+
if descriptor.get then
|
|
16
|
+
return descriptor.get(self)
|
|
17
|
+
end
|
|
18
|
+
return descriptor.value
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
metatable = getmetatable(metatable)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|