Index: pkg/dev_compiler/lib/js/common/dart_sdk.js |
diff --git a/pkg/dev_compiler/lib/js/common/dart_sdk.js b/pkg/dev_compiler/lib/js/common/dart_sdk.js |
index 0b3212c98aa8533cab77114db2ce548eda1d3990..f35e81d54029aa36c9b004458a145fe50a07b6a7 100644 |
--- a/pkg/dev_compiler/lib/js/common/dart_sdk.js |
+++ b/pkg/dev_compiler/lib/js/common/dart_sdk.js |
@@ -18,7 +18,7 @@ const convert = Object.create(null); |
const core = Object.create(null); |
const developer = Object.create(null); |
const io = Object.create(null); |
-const isolate = Object.create(null); |
+const isolate$ = Object.create(null); |
const js = Object.create(null); |
const js_util = Object.create(null); |
const math = Object.create(null); |
@@ -69,6 +69,7 @@ let UnmodifiableListMixin = () => (UnmodifiableListMixin = dart.constFn(_interna |
let UnmodifiableListBase = () => (UnmodifiableListBase = dart.constFn(_internal.UnmodifiableListBase$()))(); |
let StringToint = () => (StringToint = dart.constFn(dart.functionType(core.int, [core.String])))(); |
let Iterable = () => (Iterable = dart.constFn(core.Iterable$()))(); |
+let EfficientLengthIterable = () => (EfficientLengthIterable = dart.constFn(_internal.EfficientLengthIterable$()))(); |
let ListIterable = () => (ListIterable = dart.constFn(_internal.ListIterable$()))(); |
let SubListIterable = () => (SubListIterable = dart.constFn(_internal.SubListIterable$()))(); |
let ListIterator = () => (ListIterator = dart.constFn(_internal.ListIterator$()))(); |
@@ -105,8 +106,8 @@ let MapOfint$dynamic = () => (MapOfint$dynamic = dart.constFn(core.Map$(core.int |
let MapOfint$RawReceivePortImpl = () => (MapOfint$RawReceivePortImpl = dart.constFn(core.Map$(core.int, _isolate_helper.RawReceivePortImpl)))(); |
let SetOfint = () => (SetOfint = dart.constFn(core.Set$(core.int)))(); |
let JSArrayOf_IsolateEvent = () => (JSArrayOf_IsolateEvent = dart.constFn(_interceptors.JSArray$(_isolate_helper._IsolateEvent)))(); |
-let SetOfCapability = () => (SetOfCapability = dart.constFn(core.Set$(isolate.Capability)))(); |
-let SetOfSendPort = () => (SetOfSendPort = dart.constFn(core.Set$(isolate.SendPort)))(); |
+let SetOfCapability = () => (SetOfCapability = dart.constFn(core.Set$(isolate$.Capability)))(); |
+let SetOfSendPort = () => (SetOfSendPort = dart.constFn(core.Set$(isolate$.SendPort)))(); |
let ListOf_IsolateEvent = () => (ListOf_IsolateEvent = dart.constFn(core.List$(_isolate_helper._IsolateEvent)))(); |
let QueueOf_IsolateEvent = () => (QueueOf_IsolateEvent = dart.constFn(collection.Queue$(_isolate_helper._IsolateEvent)))(); |
let CompleterOfList = () => (CompleterOfList = dart.constFn(async.Completer$(core.List)))(); |
@@ -137,6 +138,7 @@ let IterableOfMatch = () => (IterableOfMatch = dart.constFn(core.Iterable$(core. |
let _Lazy = () => (_Lazy = dart.constFn(_js_mirrors._Lazy$()))(); |
let ListOfSymbol = () => (ListOfSymbol = dart.constFn(core.List$(core.Symbol)))(); |
let ListOfInstanceMirror = () => (ListOfInstanceMirror = dart.constFn(core.List$(mirrors.InstanceMirror)))(); |
+let FutureOfLibraryMirror = () => (FutureOfLibraryMirror = dart.constFn(async.Future$(mirrors.LibraryMirror)))(); |
let ListOfCombinatorMirror = () => (ListOfCombinatorMirror = dart.constFn(core.List$(mirrors.CombinatorMirror)))(); |
let MapOfSymbol$DeclarationMirror = () => (MapOfSymbol$DeclarationMirror = dart.constFn(core.Map$(core.Symbol, mirrors.DeclarationMirror)))(); |
let ListOfTypeMirror = () => (ListOfTypeMirror = dart.constFn(core.List$(mirrors.TypeMirror)))(); |
@@ -148,7 +150,6 @@ let JSArrayOfType = () => (JSArrayOfType = dart.constFn(_interceptors.JSArray$(c |
let ListOfParameterMirror = () => (ListOfParameterMirror = dart.constFn(core.List$(mirrors.ParameterMirror)))(); |
let IterableOfdouble = () => (IterableOfdouble = dart.constFn(core.Iterable$(core.double)))(); |
let IterableOfint = () => (IterableOfint = dart.constFn(core.Iterable$(core.int)))(); |
-let ZoneBinaryCallbackOfdynamic$dynamic$StackTrace = () => (ZoneBinaryCallbackOfdynamic$dynamic$StackTrace = dart.constFn(async.ZoneBinaryCallback$(dart.dynamic, dart.dynamic, core.StackTrace)))(); |
let _StreamImpl = () => (_StreamImpl = dart.constFn(async._StreamImpl$()))(); |
let _ControllerStream = () => (_ControllerStream = dart.constFn(async._ControllerStream$()))(); |
let _BroadcastStream = () => (_BroadcastStream = dart.constFn(async._BroadcastStream$()))(); |
@@ -170,7 +171,6 @@ let _FutureOnValue = () => (_FutureOnValue = dart.constFn(async._FutureOnValue$( |
let _Completer = () => (_Completer = dart.constFn(async._Completer$()))(); |
let _AsyncCompleter = () => (_AsyncCompleter = dart.constFn(async._AsyncCompleter$()))(); |
let _SyncCompleter = () => (_SyncCompleter = dart.constFn(async._SyncCompleter$()))(); |
-let ZoneBinaryCallbackOfObject$Object$StackTrace = () => (ZoneBinaryCallbackOfObject$Object$StackTrace = dart.constFn(async.ZoneBinaryCallback$(core.Object, core.Object, core.StackTrace)))(); |
let _FutureListener = () => (_FutureListener = dart.constFn(async._FutureListener$()))(); |
let _Future = () => (_Future = dart.constFn(async._Future$()))(); |
let StreamSubscription = () => (StreamSubscription = dart.constFn(async.StreamSubscription$()))(); |
@@ -206,8 +206,9 @@ let _BroadcastCallback = () => (_BroadcastCallback = dart.constFn(async._Broadca |
let _DoneStreamSubscription = () => (_DoneStreamSubscription = dart.constFn(async._DoneStreamSubscription$()))(); |
let _AsBroadcastStream = () => (_AsBroadcastStream = dart.constFn(async._AsBroadcastStream$()))(); |
let _BroadcastSubscriptionWrapper = () => (_BroadcastSubscriptionWrapper = dart.constFn(async._BroadcastSubscriptionWrapper$()))(); |
-let _StreamIteratorImpl = () => (_StreamIteratorImpl = dart.constFn(async._StreamIteratorImpl$()))(); |
+let _StreamIterator = () => (_StreamIterator = dart.constFn(async._StreamIterator$()))(); |
let _EmptyStream = () => (_EmptyStream = dart.constFn(async._EmptyStream$()))(); |
+let dynamicAndStackTraceTodynamic = () => (dynamicAndStackTraceTodynamic = dart.constFn(dart.functionType(dart.dynamic, [dart.dynamic, core.StackTrace])))(); |
let _ForwardingStream = () => (_ForwardingStream = dart.constFn(async._ForwardingStream$()))(); |
let _ForwardingStreamSubscription = () => (_ForwardingStreamSubscription = dart.constFn(async._ForwardingStreamSubscription$()))(); |
let _Predicate = () => (_Predicate = dart.constFn(async._Predicate$()))(); |
@@ -310,7 +311,6 @@ let dynamicAnddynamicTovoid = () => (dynamicAnddynamicTovoid = dart.constFn(dart |
let Queue = () => (Queue = dart.constFn(collection.Queue$()))(); |
let _DoubleLink = () => (_DoubleLink = dart.constFn(collection._DoubleLink$()))(); |
let DoubleLinkedQueueEntry = () => (DoubleLinkedQueueEntry = dart.constFn(collection.DoubleLinkedQueueEntry$()))(); |
-let _UserDoubleLinkedQueueEntry = () => (_UserDoubleLinkedQueueEntry = dart.constFn(collection._UserDoubleLinkedQueueEntry$()))(); |
let _DoubleLinkedQueueEntry = () => (_DoubleLinkedQueueEntry = dart.constFn(collection._DoubleLinkedQueueEntry$()))(); |
let _DoubleLinkedQueueElement = () => (_DoubleLinkedQueueElement = dart.constFn(collection._DoubleLinkedQueueElement$()))(); |
let _DoubleLinkedQueueSentinel = () => (_DoubleLinkedQueueSentinel = dart.constFn(collection._DoubleLinkedQueueSentinel$()))(); |
@@ -339,8 +339,10 @@ let ComparableOfString = () => (ComparableOfString = dart.constFn(core.Comparabl |
let List = () => (List = dart.constFn(core.List$()))(); |
let StreamOfListOfint = () => (StreamOfListOfint = dart.constFn(async.Stream$(ListOfint())))(); |
let Converter = () => (Converter = dart.constFn(convert.Converter$()))(); |
+let ChunkedConverterOfString$ListOfint$String$ListOfint = () => (ChunkedConverterOfString$ListOfint$String$ListOfint = dart.constFn(convert.ChunkedConverter$(core.String, ListOfint(), core.String, ListOfint())))(); |
let SinkOfListOfint = () => (SinkOfListOfint = dart.constFn(core.Sink$(ListOfint())))(); |
let StreamOfString = () => (StreamOfString = dart.constFn(async.Stream$(core.String)))(); |
+let ChunkedConverterOfListOfint$String$ListOfint$String = () => (ChunkedConverterOfListOfint$String$ListOfint$String = dart.constFn(convert.ChunkedConverter$(ListOfint(), core.String, ListOfint(), core.String)))(); |
let SinkOfString = () => (SinkOfString = dart.constFn(core.Sink$(core.String)))(); |
let ChunkedConversionSink = () => (ChunkedConversionSink = dart.constFn(convert.ChunkedConversionSink$()))(); |
let _ChunkedConversionCallbackOfListOfint = () => (_ChunkedConversionCallbackOfListOfint = dart.constFn(convert._ChunkedConversionCallback$(ListOfint())))(); |
@@ -351,8 +353,12 @@ let _ConverterStreamEventSink = () => (_ConverterStreamEventSink = dart.constFn( |
let _FusedCodec = () => (_FusedCodec = dart.constFn(convert._FusedCodec$()))(); |
let _InvertedCodec = () => (_InvertedCodec = dart.constFn(convert._InvertedCodec$()))(); |
let _FusedConverter = () => (_FusedConverter = dart.constFn(convert._FusedConverter$()))(); |
+let ChunkedConverterOfString$String$String$String = () => (ChunkedConverterOfString$String$String$String = dart.constFn(convert.ChunkedConverter$(core.String, core.String, core.String, core.String)))(); |
+let ChunkedConverterOfObject$String$Object$String = () => (ChunkedConverterOfObject$String$Object$String = dart.constFn(convert.ChunkedConverter$(core.Object, core.String, core.Object, core.String)))(); |
let StreamOfObject = () => (StreamOfObject = dart.constFn(async.Stream$(core.Object)))(); |
let JSArrayOfListOfint = () => (JSArrayOfListOfint = dart.constFn(_interceptors.JSArray$(ListOfint())))(); |
+let ChunkedConverterOfObject$ListOfint$Object$ListOfint = () => (ChunkedConverterOfObject$ListOfint$Object$ListOfint = dart.constFn(convert.ChunkedConverter$(core.Object, ListOfint(), core.Object, ListOfint())))(); |
+let ChunkedConverterOfString$Object$String$Object = () => (ChunkedConverterOfString$Object$String$Object = dart.constFn(convert.ChunkedConverter$(core.String, core.Object, core.String, core.Object)))(); |
let Uint8ListAndintAndintTovoid = () => (Uint8ListAndintAndintTovoid = dart.constFn(dart.functionType(dart.void, [typed_data.Uint8List, core.int, core.int])))(); |
let EventSinkOfString = () => (EventSinkOfString = dart.constFn(async.EventSink$(core.String)))(); |
let StreamTransformerOfString$String = () => (StreamTransformerOfString$String = dart.constFn(async.StreamTransformer$(core.String, core.String)))(); |
@@ -363,59 +369,62 @@ let ComparableOfDuration = () => (ComparableOfDuration = dart.constFn(core.Compa |
let Expando = () => (Expando = dart.constFn(core.Expando$()))(); |
let _Generator = () => (_Generator = dart.constFn(core._Generator$()))(); |
let _GeneratorIterable = () => (_GeneratorIterable = dart.constFn(core._GeneratorIterable$()))(); |
-let _GeneratorIterator = () => (_GeneratorIterator = dart.constFn(core._GeneratorIterator$()))(); |
let BidirectionalIterator = () => (BidirectionalIterator = dart.constFn(core.BidirectionalIterator$()))(); |
let Map$ = () => (Map$ = dart.constFn(core.Map$()))(); |
let Set = () => (Set = dart.constFn(core.Set$()))(); |
let Sink = () => (Sink = dart.constFn(core.Sink$()))(); |
let BidirectionalIteratorOfint = () => (BidirectionalIteratorOfint = dart.constFn(core.BidirectionalIterator$(core.int)))(); |
+let MapOfString$String = () => (MapOfString$String = dart.constFn(core.Map$(core.String, core.String)))(); |
let UnmodifiableMapViewOfString$String = () => (UnmodifiableMapViewOfString$String = dart.constFn(collection.UnmodifiableMapView$(core.String, core.String)))(); |
let MapOfString$ListOfString = () => (MapOfString$ListOfString = dart.constFn(core.Map$(core.String, ListOfString())))(); |
-let MapOfString$String = () => (MapOfString$String = dart.constFn(core.Map$(core.String, core.String)))(); |
let IterableOfString = () => (IterableOfString = dart.constFn(core.Iterable$(core.String)))(); |
let MapOfString$dynamic = () => (MapOfString$dynamic = dart.constFn(core.Map$(core.String, dart.dynamic)))(); |
+let ListOfUint8List = () => (ListOfUint8List = dart.constFn(core.List$(typed_data.Uint8List)))(); |
let MapOfString$ServiceExtensionHandler = () => (MapOfString$ServiceExtensionHandler = dart.constFn(core.Map$(core.String, developer.ServiceExtensionHandler)))(); |
let MapOfString$Metric = () => (MapOfString$Metric = dart.constFn(core.Map$(core.String, developer.Metric)))(); |
let ListOf_SyncBlock = () => (ListOf_SyncBlock = dart.constFn(core.List$(developer._SyncBlock)))(); |
let JSArrayOf_AsyncBlock = () => (JSArrayOf_AsyncBlock = dart.constFn(_interceptors.JSArray$(developer._AsyncBlock)))(); |
let ListOf_AsyncBlock = () => (ListOf_AsyncBlock = dart.constFn(core.List$(developer._AsyncBlock)))(); |
let CompleterOfUri = () => (CompleterOfUri = dart.constFn(async.Completer$(core.Uri)))(); |
-let ListOfListOfint = () => (ListOfListOfint = dart.constFn(core.List$(ListOfint())))(); |
-let FutureOfint = () => (FutureOfint = dart.constFn(async.Future$(core.int)))(); |
+let JSArrayOfUint8List = () => (JSArrayOfUint8List = dart.constFn(_interceptors.JSArray$(typed_data.Uint8List)))(); |
+let ChunkedConverterOfListOfint$ListOfint$ListOfint$ListOfint = () => (ChunkedConverterOfListOfint$ListOfint$ListOfint$ListOfint = dart.constFn(convert.ChunkedConverter$(ListOfint(), ListOfint(), ListOfint(), ListOfint())))(); |
let FutureOfDirectory = () => (FutureOfDirectory = dart.constFn(async.Future$(io.Directory)))(); |
let FutureOrOfDirectory = () => (FutureOrOfDirectory = dart.constFn(async.FutureOr$(io.Directory)))(); |
-let StreamOfFileSystemEntity = () => (StreamOfFileSystemEntity = dart.constFn(async.Stream$(io.FileSystemEntity)))(); |
let JSArrayOfFileSystemEntity = () => (JSArrayOfFileSystemEntity = dart.constFn(_interceptors.JSArray$(io.FileSystemEntity)))(); |
let FutureOrOfString = () => (FutureOrOfString = dart.constFn(async.FutureOr$(core.String)))(); |
let FutureOrOfbool = () => (FutureOrOfbool = dart.constFn(async.FutureOr$(core.bool)))(); |
let FutureOrOfint = () => (FutureOrOfint = dart.constFn(async.FutureOr$(core.int)))(); |
let ListOfFileSystemEntity = () => (ListOfFileSystemEntity = dart.constFn(core.List$(io.FileSystemEntity)))(); |
+let StreamControllerOfFileSystemEntity = () => (StreamControllerOfFileSystemEntity = dart.constFn(async.StreamController$(io.FileSystemEntity)))(); |
let StreamControllerOfListOfint = () => (StreamControllerOfListOfint = dart.constFn(async.StreamController$(ListOfint())))(); |
let FutureOfRandomAccessFile = () => (FutureOfRandomAccessFile = dart.constFn(async.Future$(io.RandomAccessFile)))(); |
let CompleterOfFile = () => (CompleterOfFile = dart.constFn(async.Completer$(io.File)))(); |
+let CompleterOfListOfint = () => (CompleterOfListOfint = dart.constFn(async.Completer$(ListOfint())))(); |
let FutureOfListOfint = () => (FutureOfListOfint = dart.constFn(async.Future$(ListOfint())))(); |
let FutureOrOfFile = () => (FutureOrOfFile = dart.constFn(async.FutureOr$(io.File)))(); |
let FutureOfFile = () => (FutureOfFile = dart.constFn(async.Future$(io.File)))(); |
-let FutureOrOfListOfint = () => (FutureOrOfListOfint = dart.constFn(async.FutureOr$(ListOfint())))(); |
+let FutureOfint = () => (FutureOfint = dart.constFn(async.Future$(core.int)))(); |
let StreamOfHttpRequest = () => (StreamOfHttpRequest = dart.constFn(async.Stream$(io.HttpRequest)))(); |
let ListOfRedirectInfo = () => (ListOfRedirectInfo = dart.constFn(core.List$(io.RedirectInfo)))(); |
let HashMapOfString$ListOfString = () => (HashMapOfString$ListOfString = dart.constFn(collection.HashMap$(core.String, ListOfString())))(); |
let ListOfCookie = () => (ListOfCookie = dart.constFn(core.List$(io.Cookie)))(); |
let StringAndListOfStringTovoid = () => (StringAndListOfStringTovoid = dart.constFn(dart.functionType(dart.void, [core.String, ListOfString()])))(); |
let FutureOfHttpClientResponse = () => (FutureOfHttpClientResponse = dart.constFn(async.Future$(io.HttpClientResponse)))(); |
-let StreamSubscriptionOfListOfint = () => (StreamSubscriptionOfListOfint = dart.constFn(async.StreamSubscription$(ListOfint())))(); |
let FutureOrOfHttpClientResponse = () => (FutureOrOfHttpClientResponse = dart.constFn(async.FutureOr$(io.HttpClientResponse)))(); |
let _StreamSinkImpl = () => (_StreamSinkImpl = dart.constFn(io._StreamSinkImpl$()))(); |
let _HttpOutboundMessage = () => (_HttpOutboundMessage = dart.constFn(io._HttpOutboundMessage$()))(); |
let CompleterOfHttpClientResponse = () => (CompleterOfHttpClientResponse = dart.constFn(async.Completer$(io.HttpClientResponse)))(); |
let JSArrayOfRedirectInfo = () => (JSArrayOfRedirectInfo = dart.constFn(_interceptors.JSArray$(io.RedirectInfo)))(); |
let JSArrayOfFuture = () => (JSArrayOfFuture = dart.constFn(_interceptors.JSArray$(async.Future)))(); |
+let CompleterOfSocket = () => (CompleterOfSocket = dart.constFn(async.Completer$(io.Socket)))(); |
let StreamConsumerOfListOfint = () => (StreamConsumerOfListOfint = dart.constFn(async.StreamConsumer$(ListOfint())))(); |
let CompleterOf_HttpIncoming = () => (CompleterOf_HttpIncoming = dart.constFn(async.Completer$(io._HttpIncoming)))(); |
-let X509CertificateTobool = () => (X509CertificateTobool = dart.constFn(dart.functionType(core.bool, [io.X509Certificate])))(); |
let FutureOfSecureSocket = () => (FutureOfSecureSocket = dart.constFn(async.Future$(io.SecureSocket)))(); |
+let X509CertificateTobool = () => (X509CertificateTobool = dart.constFn(dart.functionType(core.bool, [io.X509Certificate])))(); |
+let FutureOfSocket = () => (FutureOfSocket = dart.constFn(async.Future$(io.Socket)))(); |
let HashSetOf_HttpClientConnection = () => (HashSetOf_HttpClientConnection = dart.constFn(collection.HashSet$(io._HttpClientConnection)))(); |
let FutureOf_ConnectionInfo = () => (FutureOf_ConnectionInfo = dart.constFn(async.Future$(io._ConnectionInfo)))(); |
+let CompleterOf_ConnectionInfo = () => (CompleterOf_ConnectionInfo = dart.constFn(async.Completer$(io._ConnectionInfo)))(); |
let FutureOrOf_ConnectionInfo = () => (FutureOrOf_ConnectionInfo = dart.constFn(async.FutureOr$(io._ConnectionInfo)))(); |
let SetOf_HttpClientConnection = () => (SetOf_HttpClientConnection = dart.constFn(core.Set$(io._HttpClientConnection)))(); |
let HashMapOfString$_ConnectionTarget = () => (HashMapOfString$_ConnectionTarget = dart.constFn(collection.HashMap$(core.String, io._ConnectionTarget)))(); |
@@ -437,8 +446,7 @@ let StreamControllerOfHttpRequest = () => (StreamControllerOfHttpRequest = dart. |
let HttpRequestTovoid = () => (HttpRequestTovoid = dart.constFn(dart.functionType(dart.void, [io.HttpRequest])))(); |
let MapOfint$_HttpServer = () => (MapOfint$_HttpServer = dart.constFn(core.Map$(core.int, io._HttpServer)))(); |
let ListOf_Proxy = () => (ListOf_Proxy = dart.constFn(core.List$(io._Proxy)))(); |
-let FutureOfSocket = () => (FutureOfSocket = dart.constFn(async.Future$(io.Socket)))(); |
-let StreamOfint = () => (StreamOfint = dart.constFn(async.Stream$(core.int)))(); |
+let StreamSubscriptionOfListOfint = () => (StreamSubscriptionOfListOfint = dart.constFn(async.StreamSubscription$(ListOfint())))(); |
let StreamControllerOf_HttpIncoming = () => (StreamControllerOf_HttpIncoming = dart.constFn(async.StreamController$(io._HttpIncoming)))(); |
let _HttpIncomingTovoid = () => (_HttpIncomingTovoid = dart.constFn(dart.functionType(dart.void, [io._HttpIncoming])))(); |
let MapOfString$_HttpSession = () => (MapOfString$_HttpSession = dart.constFn(core.Map$(core.String, io._HttpSession)))(); |
@@ -449,14 +457,16 @@ let MapOfint$_ProcessResourceInfo = () => (MapOfint$_ProcessResourceInfo = dart. |
let MapOfint$_SocketResourceInfo = () => (MapOfint$_SocketResourceInfo = dart.constFn(core.Map$(core.int, io._SocketResourceInfo)))(); |
let StreamSinkOfListOfint = () => (StreamSinkOfListOfint = dart.constFn(async.StreamSink$(ListOfint())))(); |
let FutureOfLink = () => (FutureOfLink = dart.constFn(async.Future$(io.Link)))(); |
+let _CaseInsensitiveStringMapOfString = () => (_CaseInsensitiveStringMapOfString = dart.constFn(io._CaseInsensitiveStringMap$(core.String)))(); |
let _CaseInsensitiveStringMap = () => (_CaseInsensitiveStringMap = dart.constFn(io._CaseInsensitiveStringMap$()))(); |
+let StreamSubscriptionOfRawSocketEvent = () => (StreamSubscriptionOfRawSocketEvent = dart.constFn(async.StreamSubscription$(io.RawSocketEvent)))(); |
let FutureOfRawSecureSocket = () => (FutureOfRawSecureSocket = dart.constFn(async.Future$(io.RawSecureSocket)))(); |
let SecureSocketTovoid = () => (SecureSocketTovoid = dart.constFn(dart.functionType(dart.void, [io.SecureSocket])))(); |
let StreamControllerOfRawSecureSocket = () => (StreamControllerOfRawSecureSocket = dart.constFn(async.StreamController$(io.RawSecureSocket)))(); |
let RawSecureSocketTovoid = () => (RawSecureSocketTovoid = dart.constFn(dart.functionType(dart.void, [io.RawSecureSocket])))(); |
let StreamSubscriptionOfRawSocket = () => (StreamSubscriptionOfRawSocket = dart.constFn(async.StreamSubscription$(io.RawSocket)))(); |
-let StreamSubscriptionOfRawSocketEvent = () => (StreamSubscriptionOfRawSocketEvent = dart.constFn(async.StreamSubscription$(io.RawSocketEvent)))(); |
let CompleterOf_RawSecureSocket = () => (CompleterOf_RawSecureSocket = dart.constFn(async.Completer$(io._RawSecureSocket)))(); |
+let CompleterOfRawSecureSocket = () => (CompleterOfRawSecureSocket = dart.constFn(async.Completer$(io.RawSecureSocket)))(); |
let StreamControllerOfRawSocketEvent = () => (StreamControllerOfRawSocketEvent = dart.constFn(async.StreamController$(io.RawSocketEvent)))(); |
let RawSocketEventTovoid = () => (RawSocketEventTovoid = dart.constFn(dart.functionType(dart.void, [io.RawSocketEvent])))(); |
let StreamOfRawSocketEvent = () => (StreamOfRawSocketEvent = dart.constFn(async.Stream$(io.RawSocketEvent)))(); |
@@ -465,15 +475,14 @@ let StreamOfRawSocket = () => (StreamOfRawSocket = dart.constFn(async.Stream$(io |
let StreamOfSocket = () => (StreamOfSocket = dart.constFn(async.Stream$(io.Socket)))(); |
let StreamTransformerOfHttpRequest$WebSocket = () => (StreamTransformerOfHttpRequest$WebSocket = dart.constFn(async.StreamTransformer$(io.HttpRequest, io.WebSocket)))(); |
let ListOfStringTodynamic = () => (ListOfStringTodynamic = dart.constFn(dart.functionType(dart.dynamic, [ListOfString()])))(); |
+let EventSinkOfListOfint = () => (EventSinkOfListOfint = dart.constFn(async.EventSink$(ListOfint())))(); |
let StreamTransformerOfListOfint$dynamic = () => (StreamTransformerOfListOfint$dynamic = dart.constFn(async.StreamTransformer$(ListOfint(), dart.dynamic)))(); |
-let EventSinkOfUint8List = () => (EventSinkOfUint8List = dart.constFn(async.EventSink$(typed_data.Uint8List)))(); |
let StreamControllerOfWebSocket = () => (StreamControllerOfWebSocket = dart.constFn(async.StreamController$(io.WebSocket)))(); |
let FutureOfWebSocket = () => (FutureOfWebSocket = dart.constFn(async.Future$(io.WebSocket)))(); |
-let EventSinkOfListOfint = () => (EventSinkOfListOfint = dart.constFn(async.EventSink$(ListOfint())))(); |
-let JSArrayOfUint8List = () => (JSArrayOfUint8List = dart.constFn(_interceptors.JSArray$(typed_data.Uint8List)))(); |
+let FutureOfString = () => (FutureOfString = dart.constFn(async.Future$(core.String)))(); |
let StreamTransformerOfdynamic$ListOfint = () => (StreamTransformerOfdynamic$ListOfint = dart.constFn(async.StreamTransformer$(dart.dynamic, ListOfint())))(); |
let MapOfint$_WebSocketImpl = () => (MapOfint$_WebSocketImpl = dart.constFn(core.Map$(core.int, io._WebSocketImpl)))(); |
-let FutureOfIsolate = () => (FutureOfIsolate = dart.constFn(async.Future$(isolate.Isolate)))(); |
+let FutureOfIsolate = () => (FutureOfIsolate = dart.constFn(async.Future$(isolate$.Isolate)))(); |
let JsArray = () => (JsArray = dart.constFn(js.JsArray$()))(); |
let ExpandoOfFunction = () => (ExpandoOfFunction = dart.constFn(core.Expando$(core.Function)))(); |
let PointOfnum = () => (PointOfnum = dart.constFn(math.Point$(core.num)))(); |
@@ -664,6 +673,8 @@ let StringAndStringToString$ = () => (StringAndStringToString$ = dart.constFn(da |
let TypeAndStringTodynamic = () => (TypeAndStringTodynamic = dart.constFn(dart.definiteFunctionType(dart.dynamic, [core.Type, core.String])))(); |
let dynamicAnddynamicTodynamic$ = () => (dynamicAnddynamicTodynamic$ = dart.constFn(dart.definiteFunctionType(dart.dynamic, [dart.dynamic, dart.dynamic])))(); |
let dynamicAnddynamicToint = () => (dynamicAnddynamicToint = dart.constFn(dart.definiteFunctionType(core.int, [dart.dynamic, dart.dynamic])))(); |
+let intToint = () => (intToint = dart.constFn(dart.definiteFunctionType(core.int, [core.int])))(); |
+let StringAndintToint = () => (StringAndintToint = dart.constFn(dart.definiteFunctionType(core.int, [core.String, core.int])))(); |
let ListOfEToListOfE = () => (ListOfEToListOfE = dart.constFn(dart.definiteFunctionType(E => [core.List$(E), [core.List$(E)]])))(); |
let StringTovoid$ = () => (StringTovoid$ = dart.constFn(dart.definiteFunctionType(dart.void, [core.String])))(); |
let _IsolateContextAndFunctionTodynamic = () => (_IsolateContextAndFunctionTodynamic = dart.constFn(dart.definiteFunctionType(dart.dynamic, [_isolate_helper._IsolateContext, core.Function])))(); |
@@ -676,10 +687,11 @@ let ListToNull = () => (ListToNull = dart.constFn(dart.definiteFunctionType(core |
let StringToNull = () => (StringToNull = dart.constFn(dart.definiteFunctionType(core.Null, [core.String])))(); |
let dynamicToNull$ = () => (dynamicToNull$ = dart.constFn(dart.definiteFunctionType(core.Null, [dart.dynamic])))(); |
let TimerToNull = () => (TimerToNull = dart.constFn(dart.definiteFunctionType(core.Null, [async.Timer])))(); |
+let VoidTo_Future = () => (VoidTo_Future = dart.constFn(dart.definiteFunctionType(async._Future, [])))(); |
+let VoidToFuture = () => (VoidToFuture = dart.constFn(dart.definiteFunctionType(async.Future, [])))(); |
let dynamicToFuture = () => (dynamicToFuture = dart.constFn(dart.definiteFunctionType(async.Future, [dart.dynamic])))(); |
let boolToNull = () => (boolToNull = dart.constFn(dart.definiteFunctionType(core.Null, [core.bool])))(); |
let dynamicAndStackTraceTovoid = () => (dynamicAndStackTraceTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [dart.dynamic, core.StackTrace])))(); |
-let VoidToFuture = () => (VoidToFuture = dart.constFn(dart.definiteFunctionType(async.Future, [])))(); |
let VoidToint = () => (VoidToint = dart.constFn(dart.definiteFunctionType(core.int, [])))(); |
let dynamicAnddynamicToError = () => (dynamicAnddynamicToError = dart.constFn(dart.definiteFunctionType(core.Error, [dart.dynamic, dart.dynamic])))(); |
let dynamicAnddynamicAnddynamicToError = () => (dynamicAnddynamicAnddynamicToError = dart.constFn(dart.definiteFunctionType(core.Error, [dart.dynamic, dart.dynamic, dart.dynamic])))(); |
@@ -740,7 +752,7 @@ let FnToNull = () => (FnToNull = dart.constFn(dart.definiteFunctionType(core.Nul |
let _NotificationHandlerToFuture = () => (_NotificationHandlerToFuture = dart.constFn(dart.definiteFunctionType(async.Future, [async._NotificationHandler])))(); |
let dynamicAndStackTraceToNull = () => (dynamicAndStackTraceToNull = dart.constFn(dart.definiteFunctionType(core.Null, [dart.dynamic, core.StackTrace])))(); |
let dynamic__Tovoid = () => (dynamic__Tovoid = dart.constFn(dart.definiteFunctionType(dart.void, [dart.dynamic], [core.StackTrace])))(); |
-let FnAndFnAndFnTodynamic = () => (FnAndFnAndFnTodynamic = dart.constFn(dart.definiteFunctionType(dart.dynamic, [VoidTodynamic(), dynamicTodynamic(), ZoneBinaryCallbackOfdynamic$dynamic$StackTrace()])))(); |
+let FnAndFnAndFnTodynamic = () => (FnAndFnAndFnTodynamic = dart.constFn(dart.definiteFunctionType(dart.dynamic, [VoidTodynamic(), dynamicTodynamic(), dynamicAndStackTraceTodynamic()])))(); |
let StreamSubscriptionAnd_FutureAnddynamic__Tovoid = () => (StreamSubscriptionAnd_FutureAnddynamic__Tovoid = dart.constFn(dart.definiteFunctionType(dart.void, [async.StreamSubscription, async._Future, dart.dynamic, core.StackTrace])))(); |
let StreamSubscriptionAnd_FutureTo_ErrorCallback = () => (StreamSubscriptionAnd_FutureTo_ErrorCallback = dart.constFn(dart.definiteFunctionType(async._ErrorCallback, [async.StreamSubscription, async._Future])))(); |
let StreamSubscriptionAnd_FutureAnddynamicTovoid = () => (StreamSubscriptionAnd_FutureAnddynamicTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [async.StreamSubscription, async._Future, dart.dynamic])))(); |
@@ -778,12 +790,18 @@ let intToString = () => (intToString = dart.constFn(dart.definiteFunctionType(co |
let ObjectAndObjectTobool = () => (ObjectAndObjectTobool = dart.constFn(dart.definiteFunctionType(core.bool, [core.Object, core.Object])))(); |
let ObjectToint = () => (ObjectToint = dart.constFn(dart.definiteFunctionType(core.int, [core.Object])))(); |
let ObjectTovoid = () => (ObjectTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.Object])))(); |
+let MapOfString$StringAndStringToMapOfString$String = () => (MapOfString$StringAndStringToMapOfString$String = dart.constFn(dart.definiteFunctionType(MapOfString$String(), [MapOfString$String(), core.String])))(); |
+let StringAndintTovoid = () => (StringAndintTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.String, core.int])))(); |
+let String__Tovoid = () => (String__Tovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.String], [dart.dynamic])))(); |
let StringAndStringTovoid$ = () => (StringAndStringTovoid$ = dart.constFn(dart.definiteFunctionType(dart.void, [core.String, core.String])))(); |
let StringAnddynamicToNull = () => (StringAnddynamicToNull = dart.constFn(dart.definiteFunctionType(core.Null, [core.String, dart.dynamic])))(); |
-let MapOfString$StringAndStringToMapOfString$String = () => (MapOfString$StringAndStringToMapOfString$String = dart.constFn(dart.definiteFunctionType(MapOfString$String(), [MapOfString$String(), core.String])))(); |
let intAndintAndintTovoid = () => (intAndintAndintTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.int, core.int, core.int])))(); |
-let String__Tovoid = () => (String__Tovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.String], [dart.dynamic])))(); |
let StringAndStringToNull = () => (StringAndStringToNull = dart.constFn(dart.definiteFunctionType(core.Null, [core.String, core.String])))(); |
+let intToUint8List = () => (intToUint8List = dart.constFn(dart.definiteFunctionType(typed_data.Uint8List, [core.int])))(); |
+let dynamicAnddynamicToUint8List = () => (dynamicAnddynamicToUint8List = dart.constFn(dart.definiteFunctionType(typed_data.Uint8List, [dart.dynamic, dart.dynamic])))(); |
+let Uint8ListAndStringAndintTovoid = () => (Uint8ListAndStringAndintTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [typed_data.Uint8List, core.String, core.int])))(); |
+let VoidToListOfUint8List = () => (VoidToListOfUint8List = dart.constFn(dart.definiteFunctionType(ListOfUint8List(), [])))(); |
+let StringAndintAndint__Toint = () => (StringAndintAndint__Toint = dart.constFn(dart.definiteFunctionType(core.int, [core.String, core.int, core.int, core.int, ListOfint()])))(); |
let __Tobool = () => (__Tobool = dart.constFn(dart.definiteFunctionType(core.bool, [], {when: core.bool, message: core.String})))(); |
let String__Tovoid$ = () => (String__Tovoid$ = dart.constFn(dart.definiteFunctionType(dart.void, [core.String], {time: core.DateTime, sequenceNumber: core.int, level: core.int, name: core.String, zone: async.Zone, error: core.Object, stackTrace: core.StackTrace})))(); |
let StringAndServiceExtensionHandlerTovoid = () => (StringAndServiceExtensionHandlerTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.String, developer.ServiceExtensionHandler])))(); |
@@ -796,10 +814,11 @@ let intAndintAndString__Tovoid = () => (intAndintAndString__Tovoid = dart.constF |
let intAndintAndString__Tovoid$ = () => (intAndintAndString__Tovoid$ = dart.constFn(dart.definiteFunctionType(dart.void, [core.int, core.int, core.String, core.String, core.String])))(); |
let intAndStringAndString__Tovoid = () => (intAndStringAndString__Tovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.int, core.String, core.String, core.String])))(); |
let UriTovoid = () => (UriTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.Uri])))(); |
-let SendPortTovoid = () => (SendPortTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [isolate.SendPort])))(); |
-let SendPortAndboolTovoid = () => (SendPortAndboolTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [isolate.SendPort, core.bool])))(); |
+let SendPortTovoid = () => (SendPortTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [isolate$.SendPort])))(); |
+let SendPortAndboolTovoid = () => (SendPortAndboolTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [isolate$.SendPort, core.bool])))(); |
+let SendPortToString = () => (SendPortToString = dart.constFn(dart.definiteFunctionType(core.String, [isolate$.SendPort])))(); |
let dynamicAndStringAndStringTodynamic = () => (dynamicAndStringAndStringTodynamic = dart.constFn(dart.definiteFunctionType(dart.dynamic, [dart.dynamic, core.String, core.String])))(); |
-let ListAndintAndintTo_BufferAndStart = () => (ListAndintAndintTo_BufferAndStart = dart.constFn(dart.definiteFunctionType(io._BufferAndStart, [core.List, core.int, core.int])))(); |
+let ListOfintAndintAndintTo_BufferAndStart = () => (ListOfintAndintAndintTo_BufferAndStart = dart.constFn(dart.definiteFunctionType(io._BufferAndStart, [ListOfint(), core.int, core.int])))(); |
let intTovoid = () => (intTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.int])))(); |
let DirectoryToFutureOfDirectory = () => (DirectoryToFutureOfDirectory = dart.constFn(dart.definiteFunctionType(FutureOfDirectory(), [io.Directory])))(); |
let boolToFutureOrOfDirectory = () => (boolToFutureOrOfDirectory = dart.constFn(dart.definiteFunctionType(FutureOrOfDirectory(), [core.bool])))(); |
@@ -818,17 +837,15 @@ let FileSystemEntityTo_File = () => (FileSystemEntityTo_File = dart.constFn(dart |
let dynamicToFile = () => (dynamicToFile = dart.constFn(dart.definiteFunctionType(io.File, [dart.dynamic])))(); |
let dynamicTo_RandomAccessFile = () => (dynamicTo_RandomAccessFile = dart.constFn(dart.definiteFunctionType(io._RandomAccessFile, [dart.dynamic])))(); |
let dynamicToDateTime = () => (dynamicToDateTime = dart.constFn(dart.definiteFunctionType(core.DateTime, [dart.dynamic])))(); |
-let dynamicToFutureOfListOfint = () => (dynamicToFutureOfListOfint = dart.constFn(dart.definiteFunctionType(FutureOfListOfint(), [dart.dynamic])))(); |
-let intToFutureOfListOfint = () => (intToFutureOfListOfint = dart.constFn(dart.definiteFunctionType(FutureOfListOfint(), [core.int])))(); |
let RandomAccessFileToFutureOfListOfint = () => (RandomAccessFileToFutureOfListOfint = dart.constFn(dart.definiteFunctionType(FutureOfListOfint(), [io.RandomAccessFile])))(); |
+let intToFutureOfListOfint = () => (intToFutureOfListOfint = dart.constFn(dart.definiteFunctionType(FutureOfListOfint(), [core.int])))(); |
let ListOfintToString = () => (ListOfintToString = dart.constFn(dart.definiteFunctionType(core.String, [ListOfint()])))(); |
let RandomAccessFileTo_File = () => (RandomAccessFileTo_File = dart.constFn(dart.definiteFunctionType(io._File, [io.RandomAccessFile])))(); |
let RandomAccessFileToObject = () => (RandomAccessFileToObject = dart.constFn(dart.definiteFunctionType(core.Object, [io.RandomAccessFile])))(); |
let RandomAccessFileToFutureOrOfFile = () => (RandomAccessFileToFutureOrOfFile = dart.constFn(dart.definiteFunctionType(FutureOrOfFile(), [io.RandomAccessFile])))(); |
-let dynamicToFutureOrOfListOfint = () => (dynamicToFutureOrOfListOfint = dart.constFn(dart.definiteFunctionType(FutureOrOfListOfint(), [dart.dynamic])))(); |
+let dynamicToListOfint = () => (dynamicToListOfint = dart.constFn(dart.definiteFunctionType(ListOfint(), [dart.dynamic])))(); |
let dynamicToFileStat = () => (dynamicToFileStat = dart.constFn(dart.definiteFunctionType(io.FileStat, [dart.dynamic])))(); |
let StringAndListOfStringToListOfString = () => (StringAndListOfStringToListOfString = dart.constFn(dart.definiteFunctionType(ListOfString(), [core.String, ListOfString()])))(); |
-let ListOfintTovoid = () => (ListOfintTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [ListOfint()])))(); |
let StringAndListOfStringToNull = () => (StringAndListOfStringToNull = dart.constFn(dart.definiteFunctionType(core.Null, [core.String, ListOfString()])))(); |
let CookieToString = () => (CookieToString = dart.constFn(dart.definiteFunctionType(core.String, [io.Cookie])))(); |
let CookieTobool = () => (CookieTobool = dart.constFn(dart.definiteFunctionType(core.bool, [io.Cookie])))(); |
@@ -844,11 +861,14 @@ let CookieToNull = () => (CookieToNull = dart.constFn(dart.definiteFunctionType( |
let ListToFutureOrOfHttpClientResponse = () => (ListToFutureOrOfHttpClientResponse = dart.constFn(dart.definiteFunctionType(FutureOrOfHttpClientResponse(), [core.List])))(); |
let HttpClientResponseTovoid = () => (HttpClientResponseTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [io.HttpClientResponse])))(); |
let dynamicToIterable = () => (dynamicToIterable = dart.constFn(dart.definiteFunctionType(core.Iterable, [dart.dynamic])))(); |
+let ListOfintTovoid = () => (ListOfintTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [ListOfint()])))(); |
let dynamicTo_HttpOutboundMessage = () => (dynamicTo_HttpOutboundMessage = dart.constFn(dart.definiteFunctionType(io._HttpOutboundMessage, [dart.dynamic])))(); |
let dynamicAnddynamicTo_HttpOutboundMessage = () => (dynamicAnddynamicTo_HttpOutboundMessage = dart.constFn(dart.definiteFunctionType(io._HttpOutboundMessage, [dart.dynamic, dart.dynamic])))(); |
let dynamic__ToNull$ = () => (dynamic__ToNull$ = dart.constFn(dart.definiteFunctionType(core.Null, [dart.dynamic], [core.StackTrace])))(); |
let _HttpIncomingToNull = () => (_HttpIncomingToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io._HttpIncoming])))(); |
-let dynamicTo_DetachedSocket = () => (dynamicTo_DetachedSocket = dart.constFn(dart.definiteFunctionType(io._DetachedSocket, [dart.dynamic])))(); |
+let SocketToSocket = () => (SocketToSocket = dart.constFn(dart.definiteFunctionType(io.Socket, [io.Socket])))(); |
+let SocketTo_DetachedSocket = () => (SocketTo_DetachedSocket = dart.constFn(dart.definiteFunctionType(io._DetachedSocket, [io.Socket])))(); |
+let SocketTovoid = () => (SocketTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [io.Socket])))(); |
let SecureSocketTo_HttpClientConnection = () => (SecureSocketTo_HttpClientConnection = dart.constFn(dart.definiteFunctionType(io._HttpClientConnection, [io.SecureSocket])))(); |
let HttpClientResponseToFutureOfSecureSocket = () => (HttpClientResponseToFutureOfSecureSocket = dart.constFn(dart.definiteFunctionType(FutureOfSecureSocket(), [io.HttpClientResponse])))(); |
let X509CertificateTobool$ = () => (X509CertificateTobool$ = dart.constFn(dart.definiteFunctionType(core.bool, [io.X509Certificate])))(); |
@@ -862,14 +882,15 @@ let VoidTo_ConnectionTarget = () => (VoidTo_ConnectionTarget = dart.constFn(dart |
let dynamicToFutureOf_ConnectionInfo = () => (dynamicToFutureOf_ConnectionInfo = dart.constFn(dart.definiteFunctionType(FutureOf_ConnectionInfo(), [dart.dynamic])))(); |
let VoidToFutureOf_ConnectionInfo = () => (VoidToFutureOf_ConnectionInfo = dart.constFn(dart.definiteFunctionType(FutureOf_ConnectionInfo(), [])))(); |
let _SiteCredentialsAnd_CredentialsTo_SiteCredentials = () => (_SiteCredentialsAnd_CredentialsTo_SiteCredentials = dart.constFn(dart.definiteFunctionType(io._SiteCredentials, [io._SiteCredentials, io._Credentials])))(); |
+let SocketToNull = () => (SocketToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io.Socket])))(); |
+let dynamicTo_DetachedSocket = () => (dynamicTo_DetachedSocket = dart.constFn(dart.definiteFunctionType(io._DetachedSocket, [dart.dynamic])))(); |
let ServerSocketTo_HttpServer = () => (ServerSocketTo_HttpServer = dart.constFn(dart.definiteFunctionType(io._HttpServer, [io.ServerSocket])))(); |
let SecureServerSocketTo_HttpServer = () => (SecureServerSocketTo_HttpServer = dart.constFn(dart.definiteFunctionType(io._HttpServer, [io.SecureServerSocket])))(); |
-let SocketToNull = () => (SocketToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io.Socket])))(); |
let _HttpConnectionToNull = () => (_HttpConnectionToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io._HttpConnection])))(); |
let _HttpConnectionToMap = () => (_HttpConnectionToMap = dart.constFn(dart.definiteFunctionType(core.Map, [io._HttpConnection])))(); |
-let _FileResourceInfoToMapOfString$String = () => (_FileResourceInfoToMapOfString$String = dart.constFn(dart.definiteFunctionType(MapOfString$String(), [io._FileResourceInfo])))(); |
-let _ProcessResourceInfoToMapOfString$String = () => (_ProcessResourceInfoToMapOfString$String = dart.constFn(dart.definiteFunctionType(MapOfString$String(), [io._ProcessResourceInfo])))(); |
-let _SocketResourceInfoToMapOfString$String = () => (_SocketResourceInfoToMapOfString$String = dart.constFn(dart.definiteFunctionType(MapOfString$String(), [io._SocketResourceInfo])))(); |
+let _FileResourceInfoToMapOfString$dynamic = () => (_FileResourceInfoToMapOfString$dynamic = dart.constFn(dart.definiteFunctionType(MapOfString$dynamic(), [io._FileResourceInfo])))(); |
+let _ProcessResourceInfoToMapOfString$dynamic = () => (_ProcessResourceInfoToMapOfString$dynamic = dart.constFn(dart.definiteFunctionType(MapOfString$dynamic(), [io._ProcessResourceInfo])))(); |
+let _SocketResourceInfoToMapOfString$dynamic = () => (_SocketResourceInfoToMapOfString$dynamic = dart.constFn(dart.definiteFunctionType(MapOfString$dynamic(), [io._SocketResourceInfo])))(); |
let dynamicTo_Link = () => (dynamicTo_Link = dart.constFn(dart.definiteFunctionType(io._Link, [dart.dynamic])))(); |
let FileSystemEntityToFutureOfLink = () => (FileSystemEntityToFutureOfLink = dart.constFn(dart.definiteFunctionType(FutureOfLink(), [io.FileSystemEntity])))(); |
let FileSystemEntityTo_Link = () => (FileSystemEntityTo_Link = dart.constFn(dart.definiteFunctionType(io._Link, [io.FileSystemEntity])))(); |
@@ -882,7 +903,6 @@ let RawServerSocketToRawSecureServerSocket = () => (RawServerSocketToRawSecureSe |
let RawSecureSocketToNull = () => (RawSecureSocketToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io.RawSecureSocket])))(); |
let RawSocketToFutureOfRawSecureSocket = () => (RawSocketToFutureOfRawSecureSocket = dart.constFn(dart.definiteFunctionType(FutureOfRawSecureSocket(), [io.RawSocket])))(); |
let _FilterStatusToNull = () => (_FilterStatusToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io._FilterStatus])))(); |
-let intToint = () => (intToint = dart.constFn(dart.definiteFunctionType(core.int, [core.int])))(); |
let dynamicTo_FilterStatus = () => (dynamicTo_FilterStatus = dart.constFn(dart.definiteFunctionType(io._FilterStatus, [dart.dynamic])))(); |
let ListOfintAndStringTovoid = () => (ListOfintAndStringTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [ListOfint(), core.String])))(); |
let dynamicToStdioType = () => (dynamicToStdioType = dart.constFn(dart.definiteFunctionType(io.StdioType, [dart.dynamic])))(); |
@@ -890,14 +910,13 @@ let EventSinkTo_WebSocketProtocolTransformer = () => (EventSinkTo_WebSocketProto |
let WebSocketTovoid = () => (WebSocketTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [io.WebSocket])))(); |
let HttpRequestToNull = () => (HttpRequestToNull = dart.constFn(dart.definiteFunctionType(core.Null, [io.HttpRequest])))(); |
let SocketTo_WebSocketImpl = () => (SocketTo_WebSocketImpl = dart.constFn(dart.definiteFunctionType(io._WebSocketImpl, [io.Socket])))(); |
-let StringToFuture = () => (StringToFuture = dart.constFn(dart.definiteFunctionType(async.Future, [core.String])))(); |
+let StringToFutureOfWebSocket = () => (StringToFutureOfWebSocket = dart.constFn(dart.definiteFunctionType(FutureOfWebSocket(), [core.String])))(); |
let EventSinkOfListOfintTo_WebSocketOutgoingTransformer = () => (EventSinkOfListOfintTo_WebSocketOutgoingTransformer = dart.constFn(dart.definiteFunctionType(io._WebSocketOutgoingTransformer, [EventSinkOfListOfint()])))(); |
-let dynamicTo_WebSocketImpl = () => (dynamicTo_WebSocketImpl = dart.constFn(dart.definiteFunctionType(io._WebSocketImpl, [dart.dynamic])))(); |
let HttpClientResponseToFutureOfWebSocket = () => (HttpClientResponseToFutureOfWebSocket = dart.constFn(dart.definiteFunctionType(FutureOfWebSocket(), [io.HttpClientResponse])))(); |
let StringAnddynamicTovoid = () => (StringAnddynamicTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [core.String, dart.dynamic])))(); |
let HttpClientRequestToFutureOfHttpClientResponse = () => (HttpClientRequestToFutureOfHttpClientResponse = dart.constFn(dart.definiteFunctionType(FutureOfHttpClientResponse(), [io.HttpClientRequest])))(); |
let dynamicToMap = () => (dynamicToMap = dart.constFn(dart.definiteFunctionType(core.Map, [dart.dynamic])))(); |
-let ListToIsolate = () => (ListToIsolate = dart.constFn(dart.definiteFunctionType(isolate.Isolate, [core.List])))(); |
+let ListToIsolate = () => (ListToIsolate = dart.constFn(dart.definiteFunctionType(isolate$.Isolate, [core.List])))(); |
let dynamicTo_DartObject = () => (dynamicTo_DartObject = dart.constFn(dart.definiteFunctionType(js._DartObject, [dart.dynamic])))(); |
let dynamicAnddynamicAndFnToObject = () => (dynamicAnddynamicAndFnToObject = dart.constFn(dart.definiteFunctionType(core.Object, [dart.dynamic, dart.dynamic, dynamicTodynamic()])))(); |
let FToF = () => (FToF = dart.constFn(dart.definiteFunctionType(F => [F, [F]])))(); |
@@ -2040,7 +2059,7 @@ dart._toDisplayName = function(name) { |
return name; |
}; |
dart._dartSymbol = function(name) { |
- return core.Symbol._check(typeof name === "symbol" ? dart.const(new _internal.Symbol.es6(dart._toSymbolName(name), name)) : dart.const(core.Symbol.new(dart._toDisplayName(name)))); |
+ return core.Symbol._check(typeof name === "symbol" ? dart.const(new _internal.PrivateSymbol(dart._toSymbolName(name), name)) : dart.const(core.Symbol.new(dart._toDisplayName(name)))); |
}; |
dart.extractNamedArgs = function(args) { |
if (args.length > 0) { |
@@ -4359,7 +4378,7 @@ _interceptors.JSArray$ = dart.generic(E => { |
IterableOfE()._check(iterable); |
this[dartx.checkGrowable]('insertAll'); |
core.RangeError.checkValueInInterval(index, 0, this[dartx.length], "index"); |
- if (!_internal.EfficientLength.is(iterable)) { |
+ if (!_internal.EfficientLengthIterable.is(iterable)) { |
iterable = iterable[dartx.toList](); |
} |
let insertionLength = iterable[dartx.length]; |
@@ -4632,7 +4651,7 @@ _interceptors.JSArray$ = dart.generic(E => { |
IterableOfE()._check(replacement); |
this[dartx.checkGrowable]('replace range'); |
core.RangeError.checkValidRange(start, end, this[dartx.length]); |
- if (!_internal.EfficientLength.is(replacement)) { |
+ if (!_internal.EfficientLengthIterable.is(replacement)) { |
replacement = replacement[dartx.toList](); |
} |
let removeLength = dart.notNull(end) - dart.notNull(start); |
@@ -6347,21 +6366,20 @@ collection.ListMixin$ = dart.generic(E => { |
this[_filter](test, true); |
} |
[_filter](test, retainMatching) { |
- let source = this; |
let retained = JSArrayOfE().of([]); |
- let length = source[dartx.length]; |
+ let length = this[dartx.length]; |
for (let i = 0; i < dart.notNull(length); i++) { |
- let element = source[dartx._get](i); |
+ let element = this[dartx._get](i); |
if (dart.dcall(test, element) == retainMatching) { |
retained[dartx.add](element); |
} |
- if (length != source[dartx.length]) { |
- dart.throw(new core.ConcurrentModificationError(source)); |
+ if (length != this[dartx.length]) { |
+ dart.throw(new core.ConcurrentModificationError(this)); |
} |
} |
- if (retained[dartx.length] != source[dartx.length]) { |
- source[dartx.setRange](0, retained[dartx.length], retained); |
- source[dartx.length] = retained[dartx.length]; |
+ if (retained[dartx.length] != this[dartx.length]) { |
+ this[dartx.setRange](0, retained[dartx.length], retained); |
+ this[dartx.length] = retained[dartx.length]; |
} |
} |
clear() { |
@@ -6377,11 +6395,10 @@ collection.ListMixin$ = dart.generic(E => { |
} |
sort(compare) { |
if (compare === void 0) compare = null; |
- if (compare == null) { |
- _internal.Sort.sort(E)(this, dart.fn((a, b) => core.Comparable.compare(core.Comparable._check(a), core.Comparable._check(b)), dynamicAnddynamicToint())); |
- } else { |
- _internal.Sort.sort(E)(this, compare); |
- } |
+ _internal.Sort.sort(E)(this, (compare != null ? compare : collection.ListMixin._compareAny)); |
+ } |
+ static _compareAny(a, b) { |
+ return core.Comparable.compare(core.Comparable._check(a), core.Comparable._check(b)); |
} |
shuffle(random) { |
if (random === void 0) random = null; |
@@ -6461,7 +6478,7 @@ collection.ListMixin$ = dart.generic(E => { |
replaceRange(start, end, newContents) { |
IterableOfE()._check(newContents); |
core.RangeError.checkValidRange(start, end, this[dartx.length]); |
- if (!_internal.EfficientLength.is(newContents)) { |
+ if (!_internal.EfficientLengthIterable.is(newContents)) { |
newContents = newContents[dartx.toList](); |
} |
let removeLength = dart.notNull(end) - dart.notNull(start); |
@@ -6539,7 +6556,7 @@ collection.ListMixin$ = dart.generic(E => { |
insertAll(index, iterable) { |
IterableOfE()._check(iterable); |
core.RangeError.checkValueInInterval(index, 0, this[dartx.length], "index"); |
- if (!_internal.EfficientLength.is(iterable) || core.identical(iterable, this)) { |
+ if (!_internal.EfficientLengthIterable.is(iterable) || core.identical(iterable, this)) { |
iterable = iterable[dartx.toList](); |
} |
let insertionLength = iterable[dartx.length]; |
@@ -6628,7 +6645,9 @@ collection.ListMixin$ = dart.generic(E => { |
removeAt: dart.definiteFunctionType(E, [core.int]), |
insertAll: dart.definiteFunctionType(dart.void, [core.int, IterableOfE()]), |
setAll: dart.definiteFunctionType(dart.void, [core.int, IterableOfE()]) |
- }) |
+ }), |
+ statics: () => ({_compareAny: dart.definiteFunctionType(core.int, [dart.dynamic, dart.dynamic])}), |
+ names: ['_compareAny'] |
}); |
dart.defineExtensionMembers(ListMixin, [ |
'elementAt', |
@@ -6887,7 +6906,66 @@ dart.setSignature(_internal.CodeUnits, { |
names: ['stringOf'] |
}); |
dart.defineExtensionMembers(_internal.CodeUnits, ['_get', 'length']); |
-_internal.EfficientLength = class EfficientLength extends core.Object {}; |
+_internal.ExternalName = class ExternalName extends core.Object { |
+ new(name) { |
+ this.name = name; |
+ } |
+}; |
+dart.setSignature(_internal.ExternalName, { |
+ fields: () => ({name: core.String}) |
+}); |
+_internal.hexDigitValue = function(char) { |
+ dart.assert(dart.notNull(char) >= 0 && dart.notNull(char) <= 65535); |
+ let digit0 = 48; |
+ let a = 97; |
+ let f = 102; |
+ let digit = (dart.notNull(char) ^ digit0) >>> 0; |
+ if (digit <= 9) return digit; |
+ let letter = (dart.notNull(char) | 32) >>> 0; |
+ if (a <= letter && letter <= f) return letter - (a - 10); |
+ return -1; |
+}; |
+dart.fn(_internal.hexDigitValue, intToint()); |
+_internal.parseHexByte = function(source, index) { |
+ dart.assert(dart.notNull(index) + 2 <= dart.notNull(source[dartx.length])); |
+ let digit1 = _internal.hexDigitValue(source[dartx.codeUnitAt](index)); |
+ let digit2 = _internal.hexDigitValue(source[dartx.codeUnitAt](dart.notNull(index) + 1)); |
+ return dart.notNull(digit1) * 16 + dart.notNull(digit2) - (dart.notNull(digit2) & 256); |
+}; |
+dart.lazyFn(_internal.parseHexByte, () => StringAndintToint()); |
+const _name$ = Symbol('_name'); |
+const _nativeSymbol = Symbol('_nativeSymbol'); |
+_internal.PrivateSymbol = class PrivateSymbol extends core.Object { |
+ new(name, nativeSymbol) { |
+ this[_name$] = name; |
+ this[_nativeSymbol] = nativeSymbol; |
+ } |
+ static getName(symbol) { |
+ return _internal.PrivateSymbol.as(symbol)[_name$]; |
+ } |
+ static getNativeSymbol(symbol) { |
+ if (_internal.PrivateSymbol.is(symbol)) return symbol[_nativeSymbol]; |
+ return null; |
+ } |
+ ['=='](other) { |
+ return _internal.PrivateSymbol.is(other) && core.identical(this[_nativeSymbol], other[_nativeSymbol]); |
+ } |
+ toString() { |
+ return dart.str`Symbol("${this[_name$]}")`; |
+ } |
+}; |
+_internal.PrivateSymbol[dart.implements] = () => [core.Symbol]; |
+dart.setSignature(_internal.PrivateSymbol, { |
+ fields: () => ({ |
+ [_name$]: core.String, |
+ [_nativeSymbol]: core.Object |
+ }), |
+ statics: () => ({ |
+ getName: dart.definiteFunctionType(core.String, [core.Symbol]), |
+ getNativeSymbol: dart.definiteFunctionType(core.Object, [core.Symbol]) |
+ }), |
+ names: ['getName', 'getNativeSymbol'] |
+}); |
core.Iterable$ = dart.generic(E => { |
let EmptyIterableOfE = () => (EmptyIterableOfE = dart.constFn(_internal.EmptyIterable$(E)))(); |
let _GeneratorIterableOfE = () => (_GeneratorIterableOfE = dart.constFn(core._GeneratorIterable$(E)))(); |
@@ -7026,7 +7104,7 @@ core.Iterable$ = dart.generic(E => { |
return SetOfE().from(this); |
} |
get length() { |
- dart.assert(!_internal.EfficientLength.is(this)); |
+ dart.assert(!_internal.EfficientLengthIterable.is(this)); |
let count = 0; |
let it = this[dartx.iterator]; |
while (dart.test(it.moveNext())) { |
@@ -7195,6 +7273,15 @@ core.Iterable$ = dart.generic(E => { |
return Iterable; |
}); |
core.Iterable = Iterable(); |
+_internal.EfficientLengthIterable$ = dart.generic(T => { |
+ class EfficientLengthIterable extends core.Iterable$(T) { |
+ new() { |
+ super.new(); |
+ } |
+ } |
+ return EfficientLengthIterable; |
+}); |
+_internal.EfficientLengthIterable = EfficientLengthIterable(); |
_internal.ListIterable$ = dart.generic(E => { |
let ListIteratorOfE = () => (ListIteratorOfE = dart.constFn(_internal.ListIterator$(E)))(); |
let VoidToE = () => (VoidToE = dart.constFn(dart.functionType(E, [])))(); |
@@ -7204,7 +7291,7 @@ _internal.ListIterable$ = dart.generic(E => { |
let SetOfE = () => (SetOfE = dart.constFn(core.Set$(E)))(); |
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))(); |
let ETobool = () => (ETobool = dart.constFn(dart.functionType(core.bool, [E])))(); |
- class ListIterable extends core.Iterable$(E) { |
+ class ListIterable extends _internal.EfficientLengthIterable$(E) { |
new() { |
super.new(); |
} |
@@ -7411,7 +7498,6 @@ _internal.ListIterable$ = dart.generic(E => { |
return result; |
} |
} |
- ListIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(ListIterable, { |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}), |
methods: () => ({reduce: dart.definiteFunctionType(E, [dynamicAndEToE()])}) |
@@ -7610,7 +7696,7 @@ _internal.MappedIterable$ = dart.generic((S, T) => { |
let _TransformationOfS$T = () => (_TransformationOfS$T = dart.constFn(_internal._Transformation$(S, T)))(); |
class MappedIterable extends core.Iterable$(T) { |
static new(iterable, func) { |
- if (_internal.EfficientLength.is(iterable)) { |
+ if (_internal.EfficientLengthIterable.is(iterable)) { |
return new (EfficientLengthMappedIterableOfS$T())(iterable, func); |
} |
return new (MappedIterableOfS$T())._(iterable, func); |
@@ -7663,12 +7749,13 @@ _internal.MappedIterable$ = dart.generic((S, T) => { |
}); |
_internal.MappedIterable = MappedIterable(); |
_internal.EfficientLengthMappedIterable$ = dart.generic((S, T) => { |
+ let EfficientLengthIterableOfT = () => (EfficientLengthIterableOfT = dart.constFn(_internal.EfficientLengthIterable$(T)))(); |
class EfficientLengthMappedIterable extends _internal.MappedIterable$(S, T) { |
new(iterable, func) { |
super._(iterable, func); |
} |
} |
- EfficientLengthMappedIterable[dart.implements] = () => [_internal.EfficientLength]; |
+ EfficientLengthMappedIterable[dart.implements] = () => [EfficientLengthIterableOfT()]; |
return EfficientLengthMappedIterable; |
}); |
_internal.EfficientLengthMappedIterable = EfficientLengthMappedIterable(); |
@@ -7729,7 +7816,6 @@ _internal.MappedListIterable$ = dart.generic((S, T) => { |
return this[_f](this[_source][dartx.elementAt](index)); |
} |
} |
- MappedListIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(MappedListIterable, { |
fields: () => ({ |
[_source]: IterableOfS(), |
@@ -7758,6 +7844,11 @@ _internal.WhereIterable$ = dart.generic(E => { |
get iterator() { |
return new (WhereIteratorOfE())(this[_iterable$][dartx.iterator], this[_f]); |
} |
+ map(T) { |
+ return f => { |
+ return new (_internal.MappedIterable$(E, T))._(this, f); |
+ }; |
+ } |
} |
dart.setSignature(WhereIterable, { |
fields: () => ({ |
@@ -7766,13 +7857,12 @@ _internal.WhereIterable$ = dart.generic(E => { |
}), |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}) |
}); |
- dart.defineExtensionMembers(WhereIterable, ['iterator']); |
+ dart.defineExtensionMembers(WhereIterable, ['map', 'iterator']); |
return WhereIterable; |
}); |
_internal.WhereIterable = WhereIterable(); |
_internal.WhereIterator$ = dart.generic(E => { |
let IteratorOfE = () => (IteratorOfE = dart.constFn(core.Iterator$(E)))(); |
- let _ElementPredicateOfE = () => (_ElementPredicateOfE = dart.constFn(_internal._ElementPredicate$(E)))(); |
class WhereIterator extends core.Iterator$(E) { |
new(iterator, f) { |
this[_iterator] = iterator; |
@@ -7780,7 +7870,7 @@ _internal.WhereIterator$ = dart.generic(E => { |
} |
moveNext() { |
while (dart.test(this[_iterator].moveNext())) { |
- if (dart.test(this[_f](this[_iterator].current))) { |
+ if (dart.test(dart.dcall(this[_f], this[_iterator].current))) { |
return true; |
} |
} |
@@ -7793,7 +7883,7 @@ _internal.WhereIterator$ = dart.generic(E => { |
dart.setSignature(WhereIterator, { |
fields: () => ({ |
[_iterator]: IteratorOfE(), |
- [_f]: _ElementPredicateOfE() |
+ [_f]: _internal._ElementPredicate |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -7888,7 +7978,7 @@ _internal.TakeIterable$ = dart.generic(E => { |
if (!(typeof takeCount == 'number') || dart.notNull(takeCount) < 0) { |
dart.throw(new core.ArgumentError(takeCount)); |
} |
- if (_internal.EfficientLength.is(iterable)) { |
+ if (_internal.EfficientLengthIterable.is(iterable)) { |
return new (EfficientLengthTakeIterableOfE())(iterable, takeCount); |
} |
return new (TakeIterableOfE())._(iterable, takeCount); |
@@ -7915,6 +8005,7 @@ _internal.TakeIterable$ = dart.generic(E => { |
}); |
_internal.TakeIterable = TakeIterable(); |
_internal.EfficientLengthTakeIterable$ = dart.generic(E => { |
+ let EfficientLengthIterableOfE = () => (EfficientLengthIterableOfE = dart.constFn(_internal.EfficientLengthIterable$(E)))(); |
class EfficientLengthTakeIterable extends _internal.TakeIterable$(E) { |
new(iterable, takeCount) { |
super._(iterable, takeCount); |
@@ -7925,7 +8016,7 @@ _internal.EfficientLengthTakeIterable$ = dart.generic(E => { |
return iterableLength; |
} |
} |
- EfficientLengthTakeIterable[dart.implements] = () => [_internal.EfficientLength]; |
+ EfficientLengthTakeIterable[dart.implements] = () => [EfficientLengthIterableOfE()]; |
dart.setSignature(EfficientLengthTakeIterable, {}); |
dart.defineExtensionMembers(EfficientLengthTakeIterable, ['length']); |
return EfficientLengthTakeIterable; |
@@ -8032,7 +8123,7 @@ _internal.SkipIterable$ = dart.generic(E => { |
let IterableOfE = () => (IterableOfE = dart.constFn(core.Iterable$(E)))(); |
class SkipIterable extends core.Iterable$(E) { |
static new(iterable, count) { |
- if (_internal.EfficientLength.is(iterable)) { |
+ if (_internal.EfficientLengthIterable.is(iterable)) { |
return new (EfficientLengthSkipIterableOfE())(iterable, count); |
} |
return new (SkipIterableOfE())._(iterable, count); |
@@ -8070,6 +8161,7 @@ _internal.SkipIterable$ = dart.generic(E => { |
}); |
_internal.SkipIterable = SkipIterable(); |
_internal.EfficientLengthSkipIterable$ = dart.generic(E => { |
+ let EfficientLengthIterableOfE = () => (EfficientLengthIterableOfE = dart.constFn(_internal.EfficientLengthIterable$(E)))(); |
class EfficientLengthSkipIterable extends _internal.SkipIterable$(E) { |
new(iterable, skipCount) { |
super._(iterable, skipCount); |
@@ -8080,7 +8172,7 @@ _internal.EfficientLengthSkipIterable$ = dart.generic(E => { |
return 0; |
} |
} |
- EfficientLengthSkipIterable[dart.implements] = () => [_internal.EfficientLength]; |
+ EfficientLengthSkipIterable[dart.implements] = () => [EfficientLengthIterableOfE()]; |
dart.setSignature(EfficientLengthSkipIterable, {}); |
dart.defineExtensionMembers(EfficientLengthSkipIterable, ['length']); |
return EfficientLengthSkipIterable; |
@@ -8184,7 +8276,7 @@ _internal.EmptyIterable$ = dart.generic(E => { |
let SetOfE = () => (SetOfE = dart.constFn(core.Set$(E)))(); |
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))(); |
let ETobool = () => (ETobool = dart.constFn(dart.functionType(core.bool, [E])))(); |
- class EmptyIterable extends core.Iterable$(E) { |
+ class EmptyIterable extends _internal.EfficientLengthIterable$(E) { |
new() { |
super.new(); |
} |
@@ -8280,7 +8372,6 @@ _internal.EmptyIterable$ = dart.generic(E => { |
return SetOfE().new(); |
} |
} |
- EmptyIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(EmptyIterable, { |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}), |
methods: () => ({singleWhere: dart.definiteFunctionType(E, [ETobool()], {orElse: VoidToE()})}) |
@@ -8669,79 +8760,6 @@ _internal.makeFixedListUnmodifiable = function(E) { |
}; |
}; |
dart.lazyFn(_internal.makeFixedListUnmodifiable, () => ListOfEToListOfE()); |
-_internal.Lists = class Lists extends core.Object { |
- static copy(src, srcStart, dst, dstStart, count) { |
- if (dart.notNull(srcStart) < dart.notNull(dstStart)) { |
- for (let i = dart.notNull(srcStart) + dart.notNull(count) - 1, j = dart.notNull(dstStart) + dart.notNull(count) - 1; i >= dart.notNull(srcStart); i--, j--) { |
- dst[dartx._set](j, src[dartx._get](i)); |
- } |
- } else { |
- for (let i = srcStart, j = dstStart; dart.notNull(i) < dart.notNull(srcStart) + dart.notNull(count); i = dart.notNull(i) + 1, j = dart.notNull(j) + 1) { |
- dst[dartx._set](j, src[dartx._get](i)); |
- } |
- } |
- } |
- static areEqual(a, b) { |
- if (core.identical(a, b)) return true; |
- if (!core.List.is(b)) return false; |
- let length = a[dartx.length]; |
- if (!dart.equals(length, dart.dload(b, 'length'))) return false; |
- for (let i = 0; i < dart.notNull(length); i++) { |
- if (!core.identical(a[dartx._get](i), dart.dindex(b, i))) return false; |
- } |
- return true; |
- } |
- static indexOf(a, element, startIndex, endIndex) { |
- if (dart.notNull(startIndex) >= dart.notNull(a[dartx.length])) { |
- return -1; |
- } |
- if (dart.notNull(startIndex) < 0) { |
- startIndex = 0; |
- } |
- for (let i = startIndex; dart.notNull(i) < dart.notNull(endIndex); i = dart.notNull(i) + 1) { |
- if (dart.equals(a[dartx._get](i), element)) { |
- return i; |
- } |
- } |
- return -1; |
- } |
- static lastIndexOf(a, element, startIndex) { |
- if (dart.notNull(startIndex) < 0) { |
- return -1; |
- } |
- if (dart.notNull(startIndex) >= dart.notNull(a[dartx.length])) { |
- startIndex = dart.notNull(a[dartx.length]) - 1; |
- } |
- for (let i = startIndex; dart.notNull(i) >= 0; i = dart.notNull(i) - 1) { |
- if (dart.equals(a[dartx._get](i), element)) { |
- return i; |
- } |
- } |
- return -1; |
- } |
- static indicesCheck(a, start, end) { |
- core.RangeError.checkValidRange(start, end, a[dartx.length]); |
- } |
- static rangeCheck(a, start, length) { |
- core.RangeError.checkNotNegative(length); |
- core.RangeError.checkNotNegative(start); |
- if (dart.notNull(start) + dart.notNull(length) > dart.notNull(a[dartx.length])) { |
- let message = dart.str`${start} + ${length} must be in the range [0..${a[dartx.length]}]`; |
- dart.throw(new core.RangeError.range(length, 0, dart.notNull(a[dartx.length]) - dart.notNull(start), "length", message)); |
- } |
- } |
-}; |
-dart.setSignature(_internal.Lists, { |
- statics: () => ({ |
- copy: dart.definiteFunctionType(dart.void, [core.List, core.int, core.List, core.int, core.int]), |
- areEqual: dart.definiteFunctionType(core.bool, [core.List, dart.dynamic]), |
- indexOf: dart.definiteFunctionType(core.int, [core.List, core.Object, core.int, core.int]), |
- lastIndexOf: dart.definiteFunctionType(core.int, [core.List, core.Object, core.int]), |
- indicesCheck: dart.definiteFunctionType(dart.void, [core.List, core.int, core.int]), |
- rangeCheck: dart.definiteFunctionType(dart.void, [core.List, core.int, core.int]) |
- }), |
- names: ['copy', 'areEqual', 'indexOf', 'lastIndexOf', 'indicesCheck', 'rangeCheck'] |
-}); |
_internal.printToZone = null; |
_internal.printToConsole = function(line) { |
_js_primitives.printString(dart.str`${line}`); |
@@ -8987,27 +9005,18 @@ dart.setSignature(_internal.Sort, { |
names: ['sort', 'sortRange', '_doSort', '_insertionSort', '_dualPivotQuicksort'] |
}); |
_internal.Sort._INSERTION_SORT_THRESHOLD = 32; |
-const _name$ = Symbol('_name'); |
-const _nativeSymbol = Symbol('_nativeSymbol'); |
_internal.Symbol = class Symbol extends core.Object { |
new(name) { |
this[_name$] = name; |
- this[_nativeSymbol] = null; |
- } |
- es6(name, nativeSymbol) { |
- this[_name$] = name; |
- this[_nativeSymbol] = nativeSymbol; |
} |
unvalidated(name) { |
this[_name$] = name; |
- this[_nativeSymbol] = null; |
} |
validated(name) { |
this[_name$] = _internal.Symbol.validatePublicSymbol(name); |
- this[_nativeSymbol] = null; |
} |
['=='](other) { |
- return _internal.Symbol.is(other) && this[_name$] == other[_name$] && dart.equals(this[_nativeSymbol], other[_nativeSymbol]); |
+ return _internal.Symbol.is(other) && this[_name$] == other[_name$]; |
} |
get hashCode() { |
let hash = this._hashCode; |
@@ -9023,9 +9032,6 @@ _internal.Symbol = class Symbol extends core.Object { |
static getName(symbol) { |
return symbol[_name$]; |
} |
- static getNativeSymbol(symbol) { |
- return symbol[_nativeSymbol]; |
- } |
static validatePublicSymbol(name) { |
if (dart.test(name[dartx.isEmpty]) || dart.test(_internal.Symbol.publicSymbolPattern.hasMatch(name))) return name; |
if (dart.test(name[dartx.startsWith]('_'))) { |
@@ -9037,23 +9043,17 @@ _internal.Symbol = class Symbol extends core.Object { |
return dart.test(name[dartx.isEmpty]) || dart.test(_internal.Symbol.symbolPattern.hasMatch(name)); |
} |
}; |
-dart.defineNamedConstructor(_internal.Symbol, 'es6'); |
dart.defineNamedConstructor(_internal.Symbol, 'unvalidated'); |
dart.defineNamedConstructor(_internal.Symbol, 'validated'); |
_internal.Symbol[dart.implements] = () => [core.Symbol]; |
dart.setSignature(_internal.Symbol, { |
- fields: () => ({ |
- [_name$]: core.String, |
- [_nativeSymbol]: dart.dynamic |
- }), |
- methods: () => ({'==': dart.definiteFunctionType(core.bool, [core.Object])}), |
+ fields: () => ({[_name$]: core.String}), |
statics: () => ({ |
getName: dart.definiteFunctionType(core.String, [_internal.Symbol]), |
- getNativeSymbol: dart.definiteFunctionType(dart.dynamic, [_internal.Symbol]), |
validatePublicSymbol: dart.definiteFunctionType(core.String, [core.String]), |
isValidSymbol: dart.definiteFunctionType(core.bool, [core.String]) |
}), |
- names: ['getName', 'getNativeSymbol', 'validatePublicSymbol', 'isValidSymbol'] |
+ names: ['getName', 'validatePublicSymbol', 'isValidSymbol'] |
}); |
_internal.Symbol.reservedWordRE = '(?:assert|break|c(?:a(?:se|tch)|lass|on(?:st|tinue))|d(?:efault|o)|' + 'e(?:lse|num|xtends)|f(?:alse|inal(?:ly)?|or)|i[fns]|n(?:ew|ull)|' + 'ret(?:hrow|urn)|s(?:uper|witch)|t(?:h(?:is|row)|r(?:ue|y))|' + 'v(?:ar|oid)|w(?:hile|ith))'; |
_internal.Symbol.operatorRE = '(?:[\\-+*/%&|^]|\\[\\]=?|==|~/?|<[<=]?|>[>=]?|unary-)'; |
@@ -9236,8 +9236,8 @@ _isolate_helper._IsolateContext = class _IsolateContext extends core.Object { |
this.weakPorts = SetOfint().new(); |
this.isolateStatics = _foreign_helper.JS_CREATE_ISOLATE(); |
this.controlPort = new _isolate_helper.RawReceivePortImpl._controlPort(); |
- this.pauseCapability = isolate.Capability.new(); |
- this.terminateCapability = isolate.Capability.new(); |
+ this.pauseCapability = isolate$.Capability.new(); |
+ this.terminateCapability = isolate$.Capability.new(); |
this.delayedEvents = JSArrayOf_IsolateEvent().of([]); |
this.pauseTokens = SetOfCapability().new(); |
this.errorPorts = SetOfSendPort().new(); |
@@ -9284,7 +9284,7 @@ _isolate_helper._IsolateContext = class _IsolateContext extends core.Object { |
this.errorsAreFatal = errorsAreFatal; |
} |
handlePing(responsePort, pingType) { |
- if (pingType == isolate.Isolate.IMMEDIATE || pingType == isolate.Isolate.BEFORE_NEXT_EVENT && !dart.test(this[_isExecutingEvent])) { |
+ if (pingType == isolate$.Isolate.IMMEDIATE || pingType == isolate$.Isolate.BEFORE_NEXT_EVENT && !dart.test(this[_isExecutingEvent])) { |
responsePort.send(null); |
return; |
} |
@@ -9292,11 +9292,7 @@ _isolate_helper._IsolateContext = class _IsolateContext extends core.Object { |
responsePort.send(null); |
} |
dart.fn(respond, VoidTovoid$()); |
- if (pingType == isolate.Isolate.AS_EVENT) { |
- _isolate_helper._globalState.topEventLoop.enqueue(this, respond, "ping"); |
- return; |
- } |
- dart.assert(pingType == isolate.Isolate.BEFORE_NEXT_EVENT); |
+ dart.assert(pingType == isolate$.Isolate.BEFORE_NEXT_EVENT); |
if (this[_scheduledControlEvents] == null) { |
this[_scheduledControlEvents] = collection.Queue.new(); |
} |
@@ -9304,15 +9300,11 @@ _isolate_helper._IsolateContext = class _IsolateContext extends core.Object { |
} |
handleKill(authentification, priority) { |
if (!dart.equals(this.terminateCapability, authentification)) return; |
- if (priority == isolate.Isolate.IMMEDIATE || priority == isolate.Isolate.BEFORE_NEXT_EVENT && !dart.test(this[_isExecutingEvent])) { |
+ if (priority == isolate$.Isolate.IMMEDIATE || priority == isolate$.Isolate.BEFORE_NEXT_EVENT && !dart.test(this[_isExecutingEvent])) { |
this.kill(); |
return; |
} |
- if (priority == isolate.Isolate.AS_EVENT) { |
- _isolate_helper._globalState.topEventLoop.enqueue(this, dart.bind(this, 'kill'), "kill"); |
- return; |
- } |
- dart.assert(priority == isolate.Isolate.BEFORE_NEXT_EVENT); |
+ dart.assert(priority == isolate$.Isolate.BEFORE_NEXT_EVENT); |
if (this[_scheduledControlEvents] == null) { |
this[_scheduledControlEvents] = collection.Queue.new(); |
} |
@@ -9380,47 +9372,47 @@ _isolate_helper._IsolateContext = class _IsolateContext extends core.Object { |
switch (dart.dindex(message, 0)) { |
case "pause": |
{ |
- this.addPause(isolate.Capability._check(dart.dindex(message, 1)), isolate.Capability._check(dart.dindex(message, 2))); |
+ this.addPause(isolate$.Capability._check(dart.dindex(message, 1)), isolate$.Capability._check(dart.dindex(message, 2))); |
break; |
} |
case "resume": |
{ |
- this.removePause(isolate.Capability._check(dart.dindex(message, 1))); |
+ this.removePause(isolate$.Capability._check(dart.dindex(message, 1))); |
break; |
} |
case 'add-ondone': |
{ |
- this.addDoneListener(isolate.SendPort._check(dart.dindex(message, 1))); |
+ this.addDoneListener(isolate$.SendPort._check(dart.dindex(message, 1))); |
break; |
} |
case 'remove-ondone': |
{ |
- this.removeDoneListener(isolate.SendPort._check(dart.dindex(message, 1))); |
+ this.removeDoneListener(isolate$.SendPort._check(dart.dindex(message, 1))); |
break; |
} |
case 'set-errors-fatal': |
{ |
- this.setErrorsFatal(isolate.Capability._check(dart.dindex(message, 1)), core.bool._check(dart.dindex(message, 2))); |
+ this.setErrorsFatal(isolate$.Capability._check(dart.dindex(message, 1)), core.bool._check(dart.dindex(message, 2))); |
break; |
} |
case "ping": |
{ |
- this.handlePing(isolate.SendPort._check(dart.dindex(message, 1)), core.int._check(dart.dindex(message, 2))); |
+ this.handlePing(isolate$.SendPort._check(dart.dindex(message, 1)), core.int._check(dart.dindex(message, 2))); |
break; |
} |
case "kill": |
{ |
- this.handleKill(isolate.Capability._check(dart.dindex(message, 1)), core.int._check(dart.dindex(message, 2))); |
+ this.handleKill(isolate$.Capability._check(dart.dindex(message, 1)), core.int._check(dart.dindex(message, 2))); |
break; |
} |
case "getErrors": |
{ |
- this.addErrorListener(isolate.SendPort._check(dart.dindex(message, 1))); |
+ this.addErrorListener(isolate$.SendPort._check(dart.dindex(message, 1))); |
break; |
} |
case "stopErrors": |
{ |
- this.removeErrorListener(isolate.SendPort._check(dart.dindex(message, 1))); |
+ this.removeErrorListener(isolate$.SendPort._check(dart.dindex(message, 1))); |
break; |
} |
default: |
@@ -9463,7 +9455,7 @@ _isolate_helper._IsolateContext = class _IsolateContext extends core.Object { |
this.errorPorts.clear(); |
if (this.doneHandlers != null) { |
for (let port of core.Iterable._check(this.doneHandlers)) { |
- isolate.SendPort._check(port); |
+ isolate$.SendPort._check(port); |
port.send(null); |
} |
this.doneHandlers = null; |
@@ -9483,8 +9475,8 @@ dart.setSignature(_isolate_helper._IsolateContext, { |
weakPorts: SetOfint(), |
isolateStatics: dart.dynamic, |
controlPort: _isolate_helper.RawReceivePortImpl, |
- pauseCapability: isolate.Capability, |
- terminateCapability: isolate.Capability, |
+ pauseCapability: isolate$.Capability, |
+ terminateCapability: isolate$.Capability, |
initialized: core.bool, |
isPaused: core.bool, |
delayedEvents: ListOf_IsolateEvent(), |
@@ -9496,15 +9488,15 @@ dart.setSignature(_isolate_helper._IsolateContext, { |
errorPorts: SetOfSendPort() |
}), |
methods: () => ({ |
- addPause: dart.definiteFunctionType(dart.void, [isolate.Capability, isolate.Capability]), |
- removePause: dart.definiteFunctionType(dart.void, [isolate.Capability]), |
- addDoneListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
- removeDoneListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
- setErrorsFatal: dart.definiteFunctionType(dart.void, [isolate.Capability, core.bool]), |
- handlePing: dart.definiteFunctionType(dart.void, [isolate.SendPort, core.int]), |
- handleKill: dart.definiteFunctionType(dart.void, [isolate.Capability, core.int]), |
- addErrorListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
- removeErrorListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
+ addPause: dart.definiteFunctionType(dart.void, [isolate$.Capability, isolate$.Capability]), |
+ removePause: dart.definiteFunctionType(dart.void, [isolate$.Capability]), |
+ addDoneListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]), |
+ removeDoneListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]), |
+ setErrorsFatal: dart.definiteFunctionType(dart.void, [isolate$.Capability, core.bool]), |
+ handlePing: dart.definiteFunctionType(dart.void, [isolate$.SendPort, core.int]), |
+ handleKill: dart.definiteFunctionType(dart.void, [isolate$.Capability, core.int]), |
+ addErrorListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]), |
+ removeErrorListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]), |
handleUncaughtError: dart.definiteFunctionType(dart.void, [dart.dynamic, core.StackTrace]), |
eval: dart.definiteFunctionType(dart.dynamic, [core.Function]), |
[_setGlobals]: dart.definiteFunctionType(dart.void, []), |
@@ -9705,7 +9697,7 @@ _isolate_helper.IsolateNatives = class IsolateNatives extends core.Object { |
let replyTo = _isolate_helper._deserializeMessage(dart.dindex(msg, 'replyTo')); |
let context = new _isolate_helper._IsolateContext(); |
_isolate_helper._globalState.topEventLoop.enqueue(context, dart.fn(() => { |
- _isolate_helper.IsolateNatives._startIsolate(entryPoint, ListOfString()._check(args), message, core.bool._check(isSpawnUri), core.bool._check(startPaused), isolate.SendPort._check(replyTo)); |
+ _isolate_helper.IsolateNatives._startIsolate(entryPoint, ListOfString()._check(args), message, core.bool._check(isSpawnUri), core.bool._check(startPaused), isolate$.SendPort._check(replyTo)); |
}, VoidToNull()), 'worker-start'); |
_isolate_helper._globalState.currentContext = context; |
_isolate_helper._globalState.topEventLoop.run(); |
@@ -9718,7 +9710,7 @@ _isolate_helper.IsolateNatives = class IsolateNatives extends core.Object { |
} |
case 'message': |
{ |
- let port = isolate.SendPort._check(dart.dindex(msg, 'port')); |
+ let port = isolate$.SendPort._check(dart.dindex(msg, 'port')); |
if (port != null) { |
dart.dsend(dart.dindex(msg, 'port'), 'send', dart.dindex(msg, 'msg')); |
} |
@@ -9806,7 +9798,7 @@ _isolate_helper.IsolateNatives = class IsolateNatives extends core.Object { |
if (uri != null && dart.test(uri[dartx.endsWith](".dart"))) { |
uri = dart.notNull(uri) + ".js"; |
} |
- let port = isolate.ReceivePort.new(); |
+ let port = isolate$.ReceivePort.new(); |
let completer = CompleterOfList().new(); |
port.first.then(dart.dynamic)(dart.fn(msg => { |
if (dart.equals(dart.dindex(msg, 0), _isolate_helper._SPAWNED_SIGNAL)) { |
@@ -9845,7 +9837,7 @@ _isolate_helper.IsolateNatives = class IsolateNatives extends core.Object { |
} |
static get currentIsolate() { |
let context = _isolate_helper._IsolateContext._check(_foreign_helper.JS_CURRENT_ISOLATE_CONTEXT()); |
- return new isolate.Isolate(context.controlPort.sendPort, {pauseCapability: context.pauseCapability, terminateCapability: context.terminateCapability}); |
+ return new isolate$.Isolate(context.controlPort.sendPort, {pauseCapability: context.pauseCapability, terminateCapability: context.terminateCapability}); |
} |
static _startIsolate(topLevel, args, message, isSpawnUri, startPaused, replyTo) { |
let context = _isolate_helper._IsolateContext._check(_foreign_helper.JS_CURRENT_ISOLATE_CONTEXT()); |
@@ -9923,10 +9915,10 @@ dart.setSignature(_isolate_helper.IsolateNatives, { |
spawnFunction: dart.definiteFunctionType(async.Future$(core.List), [dynamicTovoid(), dart.dynamic, core.bool]), |
spawnUri: dart.definiteFunctionType(async.Future$(core.List), [core.Uri, ListOfString(), dart.dynamic, core.bool]), |
spawn: dart.definiteFunctionType(async.Future$(core.List), [core.String, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, core.bool]), |
- _startWorker: dart.definiteFunctionType(dart.void, [core.String, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, isolate.SendPort, StringTovoid()]), |
- _startNonWorker: dart.definiteFunctionType(dart.void, [core.String, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, isolate.SendPort]), |
- _startIsolate: dart.definiteFunctionType(dart.void, [core.Function, ListOfString(), dart.dynamic, core.bool, core.bool, isolate.SendPort]), |
- _spawnWorker: dart.definiteFunctionType(dart.void, [dart.dynamic, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, isolate.SendPort, StringTovoid()]), |
+ _startWorker: dart.definiteFunctionType(dart.void, [core.String, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, isolate$.SendPort, StringTovoid()]), |
+ _startNonWorker: dart.definiteFunctionType(dart.void, [core.String, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, isolate$.SendPort]), |
+ _startIsolate: dart.definiteFunctionType(dart.void, [core.Function, ListOfString(), dart.dynamic, core.bool, core.bool, isolate$.SendPort]), |
+ _spawnWorker: dart.definiteFunctionType(dart.void, [dart.dynamic, core.String, ListOfString(), dart.dynamic, core.bool, core.bool, isolate$.SendPort, StringTovoid()]), |
workerOnError: dart.definiteFunctionType(core.bool, [dart.dynamic, core.String, StringTovoid()]) |
}), |
names: ['computeThisScript', 'computeThisScriptJsshell', 'computeThisScriptD8', 'computeThisScriptFromTrace', '_getEventData', '_processWorkerMessage', 'handleSpawnWorkerRequest', '_log', '_consoleLog', '_getJSFunctionFromName', '_getJSFunctionName', '_allocate', 'spawnFunction', 'spawnUri', 'spawn', '_startWorker', '_startNonWorker', '_startIsolate', '_spawnWorker', 'workerOnError'] |
@@ -9953,10 +9945,10 @@ _isolate_helper._BaseSendPort = class _BaseSendPort extends core.Object { |
} |
} |
}; |
-_isolate_helper._BaseSendPort[dart.implements] = () => [isolate.SendPort]; |
+_isolate_helper._BaseSendPort[dart.implements] = () => [isolate$.SendPort]; |
dart.setSignature(_isolate_helper._BaseSendPort, { |
fields: () => ({[_isolateId]: core.int}), |
- methods: () => ({[_checkReplyTo]: dart.definiteFunctionType(dart.void, [isolate.SendPort])}) |
+ methods: () => ({[_checkReplyTo]: dart.definiteFunctionType(dart.void, [isolate$.SendPort])}) |
}); |
const _receivePort = Symbol('_receivePort'); |
const _isClosed = Symbol('_isClosed'); |
@@ -9988,7 +9980,7 @@ _isolate_helper._NativeJsSendPort = class _NativeJsSendPort extends _isolate_hel |
return this[_receivePort][_id]; |
} |
}; |
-_isolate_helper._NativeJsSendPort[dart.implements] = () => [isolate.SendPort]; |
+_isolate_helper._NativeJsSendPort[dart.implements] = () => [isolate$.SendPort]; |
dart.setSignature(_isolate_helper._NativeJsSendPort, { |
fields: () => ({[_receivePort]: _isolate_helper.RawReceivePortImpl}), |
methods: () => ({send: dart.definiteFunctionType(dart.void, [dart.dynamic])}) |
@@ -10019,7 +10011,7 @@ _isolate_helper._WorkerSendPort = class _WorkerSendPort extends _isolate_helper. |
return (dart.notNull(this[_workerId]) << 16 ^ dart.notNull(this[_isolateId]) << 8 ^ dart.notNull(this[_receivePortId])) >>> 0; |
} |
}; |
-_isolate_helper._WorkerSendPort[dart.implements] = () => [isolate.SendPort]; |
+_isolate_helper._WorkerSendPort[dart.implements] = () => [isolate$.SendPort]; |
dart.setSignature(_isolate_helper._WorkerSendPort, { |
fields: () => ({ |
[_workerId]: core.int, |
@@ -10077,14 +10069,14 @@ _isolate_helper.RawReceivePortImpl = class RawReceivePortImpl extends core.Objec |
}; |
dart.defineNamedConstructor(_isolate_helper.RawReceivePortImpl, 'weak'); |
dart.defineNamedConstructor(_isolate_helper.RawReceivePortImpl, '_controlPort'); |
-_isolate_helper.RawReceivePortImpl[dart.implements] = () => [isolate.RawReceivePort]; |
+_isolate_helper.RawReceivePortImpl[dart.implements] = () => [isolate$.RawReceivePort]; |
dart.setSignature(_isolate_helper.RawReceivePortImpl, { |
fields: () => ({ |
[_id]: core.int, |
[_handler]: core.Function, |
[_isClosed]: core.bool |
}), |
- getters: () => ({sendPort: dart.definiteFunctionType(isolate.SendPort, [])}), |
+ getters: () => ({sendPort: dart.definiteFunctionType(isolate$.SendPort, [])}), |
setters: () => ({handler: dart.definiteFunctionType(dart.void, [core.Function])}), |
methods: () => ({ |
[_close]: dart.definiteFunctionType(dart.void, []), |
@@ -10230,7 +10222,8 @@ async.Stream$ = dart.generic(T => { |
}, VoidToNull()), onCancel: dart.fn(() => { |
if (timer != null) timer.cancel(); |
timer = null; |
- }, VoidToNull())}); |
+ return async.Future._nullFuture; |
+ }, VoidTo_Future())}); |
return controller.stream; |
} |
static eventTransformed(source, mapSink) { |
@@ -10289,9 +10282,7 @@ async.Stream$ = dart.generic(T => { |
subscription.pause(); |
}, VoidToNull()), onResume: dart.fn(() => { |
subscription.resume(); |
- }, VoidToNull()), onCancel: dart.fn(() => { |
- subscription.cancel(); |
- }, VoidToNull()), sync: true}); |
+ }, VoidToNull()), onCancel: dart.fn(() => subscription.cancel(), VoidToFuture()), sync: true}); |
} |
return controller.stream; |
}; |
@@ -10329,9 +10320,7 @@ async.Stream$ = dart.generic(T => { |
subscription.pause(); |
}, VoidToNull()), onResume: dart.fn(() => { |
subscription.resume(); |
- }, VoidToNull()), onCancel: dart.fn(() => { |
- subscription.cancel(); |
- }, VoidToNull()), sync: true}); |
+ }, VoidToNull()), onCancel: dart.fn(() => subscription.cancel(), VoidToFuture()), sync: true}); |
} |
return controller.stream; |
}; |
@@ -10862,13 +10851,13 @@ _isolate_helper.ReceivePortImpl = class ReceivePortImpl extends async.Stream { |
dart.addSimpleTypeTests(_isolate_helper.ReceivePortImpl); |
dart.defineNamedConstructor(_isolate_helper.ReceivePortImpl, 'weak'); |
dart.defineNamedConstructor(_isolate_helper.ReceivePortImpl, 'fromRawReceivePort'); |
-_isolate_helper.ReceivePortImpl[dart.implements] = () => [isolate.ReceivePort]; |
+_isolate_helper.ReceivePortImpl[dart.implements] = () => [isolate$.ReceivePort]; |
dart.setSignature(_isolate_helper.ReceivePortImpl, { |
fields: () => ({ |
- [_rawPort]: isolate.RawReceivePort, |
+ [_rawPort]: isolate$.RawReceivePort, |
[_controller]: async.StreamController |
}), |
- getters: () => ({sendPort: dart.definiteFunctionType(isolate.SendPort, [])}), |
+ getters: () => ({sendPort: dart.definiteFunctionType(isolate$.SendPort, [])}), |
methods: () => ({ |
listen: dart.definiteFunctionType(async.StreamSubscription, [dynamicTovoid()], {onError: core.Function, onDone: VoidTovoid(), cancelOnError: core.bool}), |
close: dart.definiteFunctionType(dart.void, []) |
@@ -10981,7 +10970,7 @@ _isolate_helper.CapabilityImpl = class CapabilityImpl extends core.Object { |
} |
}; |
dart.defineNamedConstructor(_isolate_helper.CapabilityImpl, '_internal'); |
-_isolate_helper.CapabilityImpl[dart.implements] = () => [isolate.Capability]; |
+_isolate_helper.CapabilityImpl[dart.implements] = () => [isolate$.Capability]; |
dart.setSignature(_isolate_helper.CapabilityImpl, { |
fields: () => ({[_id]: core.int}), |
methods: () => ({'==': dart.definiteFunctionType(core.bool, [core.Object])}) |
@@ -11019,7 +11008,7 @@ _isolate_helper._Serializer = class _Serializer extends core.Object { |
if (_js_helper.InternalMap.is(x)) return this.serializeMap(x); |
if (_interceptors.JSObject.is(x)) return this.serializeJSObject(x); |
if (_interceptors.Interceptor.is(x)) this.unsupported(x); |
- if (isolate.RawReceivePort.is(x)) { |
+ if (isolate$.RawReceivePort.is(x)) { |
this.unsupported(x, "RawReceivePorts can't be transmitted:"); |
} |
if (_isolate_helper._NativeJsSendPort.is(x)) return this.serializeJsSendPort(x); |
@@ -11297,7 +11286,7 @@ _isolate_helper._Deserializer = class _Deserializer extends core.Object { |
} |
deserializeRawSendPort(x) { |
dart.assert(dart.equals(dart.dindex(x, 0), 'raw sendport')); |
- let result = isolate.SendPort._check(dart.dindex(x, 1)); |
+ let result = isolate$.SendPort._check(dart.dindex(x, 1)); |
this.deserializedObjects[dartx.add](result); |
return result; |
} |
@@ -11349,8 +11338,8 @@ dart.setSignature(_isolate_helper._Deserializer, { |
deserializeMutable: dart.definiteFunctionType(core.List, [dart.dynamic]), |
deserializeConst: dart.definiteFunctionType(core.List, [dart.dynamic]), |
deserializeMap: dart.definiteFunctionType(core.Map, [_js_helper.InternalMap]), |
- deserializeSendPort: dart.definiteFunctionType(isolate.SendPort, [dart.dynamic]), |
- deserializeRawSendPort: dart.definiteFunctionType(isolate.SendPort, [dart.dynamic]), |
+ deserializeSendPort: dart.definiteFunctionType(isolate$.SendPort, [dart.dynamic]), |
+ deserializeRawSendPort: dart.definiteFunctionType(isolate$.SendPort, [dart.dynamic]), |
deserializeJSObject: dart.definiteFunctionType(dart.dynamic, [dart.dynamic]), |
deserializeClosure: dart.definiteFunctionType(core.Function, [dart.dynamic]), |
deserializeDartObject: dart.definiteFunctionType(dart.dynamic, [dart.dynamic]) |
@@ -12048,6 +12037,9 @@ core.FallThroughError = class FallThroughError extends core.Error { |
new() { |
super.new(); |
} |
+ toString() { |
+ return super.toString(); |
+ } |
}; |
_js_helper.FallThroughErrorImplementation = class FallThroughErrorImplementation extends core.FallThroughError { |
new() { |
@@ -12070,13 +12062,18 @@ dart.setSignature(_js_helper.RuntimeError, { |
fields: () => ({message: dart.dynamic}) |
}); |
core.AssertionError = class AssertionError extends core.Error { |
- new() { |
+ new(message) { |
+ if (message === void 0) message = null; |
+ this.message = message; |
super.new(); |
} |
toString() { |
return "Assertion failed"; |
} |
}; |
+dart.setSignature(core.AssertionError, { |
+ fields: () => ({message: core.Object}) |
+}); |
_js_helper.AssertionErrorWithMessage = class AssertionErrorWithMessage extends core.AssertionError { |
new(message) { |
this[_message] = message; |
@@ -12681,7 +12678,7 @@ _js_helper.LinkedHashMapKeyIterable$ = dart.generic(E => { |
let LinkedHashMapKeyIteratorOfE = () => (LinkedHashMapKeyIteratorOfE = dart.constFn(_js_helper.LinkedHashMapKeyIterator$(E)))(); |
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))(); |
let JsLinkedHashMapOfE$dynamic = () => (JsLinkedHashMapOfE$dynamic = dart.constFn(_js_helper.JsLinkedHashMap$(E, dart.dynamic)))(); |
- class LinkedHashMapKeyIterable extends core.Iterable$(E) { |
+ class LinkedHashMapKeyIterable extends _internal.EfficientLengthIterable$(E) { |
new(map) { |
this[_map] = map; |
super.new(); |
@@ -12710,7 +12707,6 @@ _js_helper.LinkedHashMapKeyIterable$ = dart.generic(E => { |
} |
} |
} |
- LinkedHashMapKeyIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(LinkedHashMapKeyIterable, { |
fields: () => ({[_map]: JsLinkedHashMapOfE$dynamic()}), |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}) |
@@ -13381,7 +13377,11 @@ _js_helper.isJsArray = function(value) { |
}; |
dart.lazyFn(_js_helper.isJsArray, () => dynamicTobool$()); |
_js_mirrors.getName = function(symbol) { |
- return _internal.Symbol.getName(_internal.Symbol.as(symbol)); |
+ if (_internal.PrivateSymbol.is(symbol)) { |
+ return _internal.PrivateSymbol.getName(symbol); |
+ } else { |
+ return _internal.Symbol.getName(_internal.Symbol.as(symbol)); |
+ } |
}; |
dart.lazyFn(_js_mirrors.getName, () => SymbolToString()); |
_js_mirrors.getSymbol = function(name, library) { |
@@ -13460,7 +13460,7 @@ _js_mirrors._Lazy$ = dart.generic(T => { |
}); |
_js_mirrors._Lazy = _Lazy(); |
_js_mirrors._getESSymbol = function(symbol) { |
- return _internal.Symbol.getNativeSymbol(_internal.Symbol.as(symbol)); |
+ return _internal.PrivateSymbol.getNativeSymbol(symbol); |
}; |
dart.lazyFn(_js_mirrors._getESSymbol, () => SymbolTodynamic()); |
_js_mirrors._getMember = function(symbol) { |
@@ -13504,7 +13504,7 @@ _js_mirrors._getNameForESSymbol = function(member) { |
dart.lazyFn(_js_mirrors._getNameForESSymbol, () => dynamicToString()); |
_js_mirrors._getSymbolForESSymbol = function(member) { |
let name = _js_mirrors._getNameForESSymbol(member); |
- return new _internal.Symbol.es6(name, member); |
+ return new _internal.PrivateSymbol(name, member); |
}; |
dart.lazyFn(_js_mirrors._getSymbolForESSymbol, () => dynamicToSymbol()); |
_js_mirrors._getSymbolForMember = function(member) { |
@@ -13512,7 +13512,7 @@ _js_mirrors._getSymbolForMember = function(member) { |
return core.Symbol.new(member); |
} else { |
let name = _js_mirrors._getNameForESSymbol(member); |
- return new _internal.Symbol.es6(name, member); |
+ return new _internal.PrivateSymbol(name, member); |
} |
}; |
dart.lazyFn(_js_mirrors._getSymbolForMember, () => dynamicToSymbol()); |
@@ -13656,12 +13656,18 @@ _js_mirrors.JsIsolateMirror = class JsIsolateMirror extends _js_mirrors.JsMirror |
}; |
_js_mirrors.JsIsolateMirror[dart.implements] = () => [mirrors.IsolateMirror]; |
_js_mirrors.JsLibraryDependencyMirror = class JsLibraryDependencyMirror extends _js_mirrors.JsMirror { |
+ loadLibrary(...args) { |
+ return FutureOfLibraryMirror()._check(this.noSuchMethod(new dart.InvocationImpl('loadLibrary', args, {isMethod: true}))); |
+ } |
get isImport() { |
return core.bool._check(this.noSuchMethod(new dart.InvocationImpl('isImport', [], {isGetter: true}))); |
} |
get isExport() { |
return core.bool._check(this.noSuchMethod(new dart.InvocationImpl('isExport', [], {isGetter: true}))); |
} |
+ get isDeferred() { |
+ return core.bool._check(this.noSuchMethod(new dart.InvocationImpl('isDeferred', [], {isGetter: true}))); |
+ } |
get sourceLibrary() { |
return mirrors.LibraryMirror._check(this.noSuchMethod(new dart.InvocationImpl('sourceLibrary', [], {isGetter: true}))); |
} |
@@ -13692,6 +13698,9 @@ _js_mirrors.JsObjectMirror = class JsObjectMirror extends _js_mirrors.JsMirror { |
setField(...args) { |
return mirrors.InstanceMirror._check(this.noSuchMethod(new dart.InvocationImpl('setField', args, {isMethod: true}))); |
} |
+ delegate(...args) { |
+ return this.noSuchMethod(new dart.InvocationImpl('delegate', args, {isMethod: true})); |
+ } |
}; |
_js_mirrors.JsObjectMirror[dart.implements] = () => [mirrors.ObjectMirror]; |
const _getAccessor = Symbol('_getAccessor'); |
@@ -13839,7 +13848,7 @@ _js_mirrors.JsClassMirror = class JsClassMirror extends _js_mirrors.JsMirror { |
let setters = _js_mirrors._getSetters(unwrapped); |
setters[dartx.forEach](dart.fn((symbol, ft) => { |
let name = dart.notNull(_js_mirrors.getName(symbol)) + '='; |
- symbol = new _internal.Symbol.es6(name, _js_mirrors._getESSymbol(symbol)); |
+ symbol = new _internal.PrivateSymbol(name, _js_mirrors._getESSymbol(symbol)); |
this[_declarations][dartx._set](symbol, new _js_mirrors.JsMethodMirror._instanceMethod(this, symbol, ft)); |
}, SymbolAnddynamicToNull())); |
let staticFields = _js_mirrors._getStaticFields(unwrapped); |
@@ -13988,12 +13997,18 @@ _js_mirrors.JsClassMirror = class JsClassMirror extends _js_mirrors.JsMirror { |
get typeVariables() { |
return ListOfTypeVariableMirror()._check(this.noSuchMethod(new dart.InvocationImpl('typeVariables', [], {isGetter: true}))); |
} |
+ delegate(...args) { |
+ return this.noSuchMethod(new dart.InvocationImpl('delegate', args, {isMethod: true})); |
+ } |
isSubclassOf(...args) { |
return core.bool._check(this.noSuchMethod(new dart.InvocationImpl('isSubclassOf', args, {isMethod: true}))); |
} |
get isAbstract() { |
return core.bool._check(this.noSuchMethod(new dart.InvocationImpl('isAbstract', [], {isGetter: true}))); |
} |
+ get isEnum() { |
+ return core.bool._check(this.noSuchMethod(new dart.InvocationImpl('isEnum', [], {isGetter: true}))); |
+ } |
get instanceMembers() { |
return MapOfSymbol$MethodMirror()._check(this.noSuchMethod(new dart.InvocationImpl('instanceMembers', [], {isGetter: true}))); |
} |
@@ -16799,9 +16814,9 @@ dart.lazyFn(async._invokeErrorHandler, () => FunctionAndObjectAndStackTraceTodyn |
async._registerErrorHandler = function(R) { |
return (errorHandler, zone) => { |
if (async.ZoneBinaryCallback.is(errorHandler)) { |
- return zone.registerBinaryCallback(dart.dynamic, dart.dynamic, core.StackTrace)(ZoneBinaryCallbackOfdynamic$dynamic$StackTrace().as(errorHandler)); |
+ return zone.registerBinaryCallback(R, dart.dynamic, core.StackTrace)(async.ZoneBinaryCallback$(R, dart.dynamic, core.StackTrace).as(errorHandler)); |
} else { |
- return zone.registerUnaryCallback(dart.dynamic, dart.dynamic)(async.ZoneUnaryCallback.as(errorHandler)); |
+ return zone.registerUnaryCallback(R, dart.dynamic)(async.ZoneUnaryCallback$(R, dart.dynamic).as(errorHandler)); |
} |
}; |
}; |
@@ -16955,7 +16970,6 @@ const _isClosed$ = Symbol('_isClosed'); |
const _waitsForCancel = Symbol('_waitsForCancel'); |
const _canFire = Symbol('_canFire'); |
const _cancelOnError = Symbol('_cancelOnError'); |
-const _incrementPauseCount = Symbol('_incrementPauseCount'); |
const _sendData = Symbol('_sendData'); |
const _addPending = Symbol('_addPending'); |
const _sendError = Symbol('_sendError'); |
@@ -17000,7 +17014,7 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
} |
onError(handleError) { |
if (handleError == null) handleError = async._nullErrorHandler; |
- this[_onError] = async._registerErrorHandler(T)(handleError, this[_zone]); |
+ this[_onError] = async._registerErrorHandler(dart.dynamic)(handleError, this[_zone]); |
} |
onDone(handleDone) { |
if (handleDone == null) handleDone = async._nullDoneHandler; |
@@ -17033,9 +17047,11 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
} |
cancel() { |
this[_state] = (dart.notNull(this[_state]) & ~async._BufferingStreamSubscription._STATE_WAIT_FOR_CANCEL) >>> 0; |
- if (dart.test(this[_isCanceled])) return this[_cancelFuture]; |
- this[_cancel](); |
- return this[_cancelFuture]; |
+ if (!dart.test(this[_isCanceled])) { |
+ this[_cancel](); |
+ } |
+ let l = this[_cancelFuture]; |
+ return l != null ? l : async.Future._nullFuture; |
} |
asFuture(E) { |
return futureValue => { |
@@ -17045,8 +17061,14 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
result[_complete](futureValue); |
}, VoidToNull()); |
this[_onError] = dart.fn((error, stackTrace) => { |
- this.cancel(); |
- result[_completeError](error, core.StackTrace._check(stackTrace)); |
+ let cancelFuture = this.cancel(); |
+ if (!core.identical(cancelFuture, async.Future._nullFuture)) { |
+ cancelFuture.whenComplete(dart.fn(() => { |
+ result[_completeError](error, core.StackTrace._check(stackTrace)); |
+ }, VoidToNull())); |
+ } else { |
+ result[_completeError](error, core.StackTrace._check(stackTrace)); |
+ } |
}, dynamicAnddynamicToNull()); |
return result; |
}; |
@@ -17092,9 +17114,6 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
if (!dart.test(this[_inCallback])) this[_pending] = null; |
this[_cancelFuture] = this[_onCancel](); |
} |
- [_incrementPauseCount]() { |
- this[_state] = (dart.notNull(this[_state]) + async._BufferingStreamSubscription._STATE_PAUSE_COUNT | async._BufferingStreamSubscription._STATE_INPUT_PAUSED) >>> 0; |
- } |
[_decrementPauseCount]() { |
dart.assert(this[_isPaused]); |
this[_state] = dart.notNull(this[_state]) - async._BufferingStreamSubscription._STATE_PAUSE_COUNT; |
@@ -17181,7 +17200,7 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
if (dart.test(this[_cancelOnError])) { |
this[_state] = (dart.notNull(this[_state]) | async._BufferingStreamSubscription._STATE_WAIT_FOR_CANCEL) >>> 0; |
this[_cancel](); |
- if (async.Future.is(this[_cancelFuture])) { |
+ if (async.Future.is(this[_cancelFuture]) && !core.identical(this[_cancelFuture], async.Future._nullFuture)) { |
this[_cancelFuture].whenComplete(sendError); |
} else { |
sendError(); |
@@ -17204,7 +17223,7 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
dart.fn(sendDone, VoidTovoid$()); |
this[_cancel](); |
this[_state] = (dart.notNull(this[_state]) | async._BufferingStreamSubscription._STATE_WAIT_FOR_CANCEL) >>> 0; |
- if (async.Future.is(this[_cancelFuture])) { |
+ if (async.Future.is(this[_cancelFuture]) && !core.identical(this[_cancelFuture], async.Future._nullFuture)) { |
this[_cancelFuture].whenComplete(sendDone); |
} else { |
sendDone(); |
@@ -17214,7 +17233,7 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
dart.assert(!dart.test(this[_inCallback])); |
let wasInputPaused = this[_isInputPaused]; |
this[_state] = (dart.notNull(this[_state]) | async._BufferingStreamSubscription._STATE_IN_CALLBACK) >>> 0; |
- callback(); |
+ dart.dcall(callback); |
this[_state] = (dart.notNull(this[_state]) & ~async._BufferingStreamSubscription._STATE_IN_CALLBACK) >>> 0; |
this[_checkState](wasInputPaused); |
} |
@@ -17282,7 +17301,6 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
cancel: dart.definiteFunctionType(async.Future, []), |
asFuture: dart.definiteFunctionType(E => [async.Future$(E), [], [E]]), |
[_cancel]: dart.definiteFunctionType(dart.void, []), |
- [_incrementPauseCount]: dart.definiteFunctionType(dart.void, []), |
[_decrementPauseCount]: dart.definiteFunctionType(dart.void, []), |
[_add$]: dart.definiteFunctionType(dart.void, [T]), |
[_addError]: dart.definiteFunctionType(dart.void, [core.Object, core.StackTrace]), |
@@ -17294,7 +17312,7 @@ async._BufferingStreamSubscription$ = dart.generic(T => { |
[_sendData]: dart.definiteFunctionType(dart.void, [T]), |
[_sendError]: dart.definiteFunctionType(dart.void, [core.Object, core.StackTrace]), |
[_sendDone]: dart.definiteFunctionType(dart.void, []), |
- [_guardCallback]: dart.definiteFunctionType(dart.void, [VoidTovoid()]), |
+ [_guardCallback]: dart.definiteFunctionType(dart.void, [dart.dynamic]), |
[_checkState]: dart.definiteFunctionType(dart.void, [core.bool]) |
}) |
}); |
@@ -17309,7 +17327,6 @@ async._BufferingStreamSubscription._STATE_WAIT_FOR_CANCEL = 16; |
async._BufferingStreamSubscription._STATE_IN_CALLBACK = 32; |
async._BufferingStreamSubscription._STATE_HAS_PENDING = 64; |
async._BufferingStreamSubscription._STATE_PAUSE_COUNT = 128; |
-async._BufferingStreamSubscription._STATE_PAUSE_COUNT_SHIFT = 7; |
async._ControllerSubscription$ = dart.generic(T => { |
let _StreamControllerLifecycleOfT = () => (_StreamControllerLifecycleOfT = dart.constFn(async._StreamControllerLifecycle$(T)))(); |
class _ControllerSubscription extends async._BufferingStreamSubscription$(T) { |
@@ -18065,7 +18082,7 @@ async.Future$ = dart.flattenFutures(dart.generic(T => { |
result[_completeError](error, stackTrace); |
} |
} |
- dart.fn(handleError, dynamicAnddynamicTovoid$()); |
+ dart.fn(handleError, dynamicAnddynamicToNull()); |
try { |
for (let future of futures) { |
let pos = remaining; |
@@ -18211,7 +18228,7 @@ async._nonNullError = function(error) { |
}; |
dart.fn(async._nonNullError, ObjectToObject()); |
async._FutureOnValue$ = dart.generic((S, T) => { |
- const _FutureOnValue = dart.typedef('_FutureOnValue', () => dart.functionType(dart.dynamic, [S])); |
+ const _FutureOnValue = dart.typedef('_FutureOnValue', () => dart.functionType(async.FutureOr$(T), [S])); |
return _FutureOnValue; |
}); |
async._FutureOnValue = _FutureOnValue(); |
@@ -18302,6 +18319,9 @@ const _errorTest = Symbol('_errorTest'); |
const _whenCompleteAction = Symbol('_whenCompleteAction'); |
async._FutureListener$ = dart.generic((S, T) => { |
let _FutureOnValueOfS$T = () => (_FutureOnValueOfS$T = dart.constFn(async._FutureOnValue$(S, T)))(); |
+ let FutureOrOfT = () => (FutureOrOfT = dart.constFn(async.FutureOr$(T)))(); |
+ let ZoneBinaryCallbackOfFutureOrOfT$Object$StackTrace = () => (ZoneBinaryCallbackOfFutureOrOfT$Object$StackTrace = dart.constFn(async.ZoneBinaryCallback$(FutureOrOfT(), core.Object, core.StackTrace)))(); |
+ let dynamicToFutureOrOfT = () => (dynamicToFutureOrOfT = dart.constFn(dart.functionType(FutureOrOfT(), [dart.dynamic])))(); |
let _FutureOfT = () => (_FutureOfT = dart.constFn(async._Future$(T)))(); |
class _FutureListener extends core.Object { |
then(result, onValue, errorCallback) { |
@@ -18361,7 +18381,7 @@ async._FutureListener$ = dart.generic((S, T) => { |
} |
handleValue(sourceResult) { |
S._check(sourceResult); |
- return this[_zone].runUnary(dart.dynamic, S)(this[_onValue], sourceResult); |
+ return this[_zone].runUnary(FutureOrOfT(), S)(this[_onValue], sourceResult); |
} |
matchesErrorTest(asyncError) { |
if (!dart.test(this.hasErrorTest)) return true; |
@@ -18371,10 +18391,10 @@ async._FutureListener$ = dart.generic((S, T) => { |
handleError(asyncError) { |
dart.assert(dart.test(this.handlesError) && dart.test(this.hasErrorCallback)); |
if (async.ZoneBinaryCallback.is(this.errorCallback)) { |
- let typedErrorCallback = ZoneBinaryCallbackOfObject$Object$StackTrace().as(this.errorCallback); |
- return this[_zone].runBinary(core.Object, core.Object, core.StackTrace)(typedErrorCallback, asyncError.error, asyncError.stackTrace); |
+ let typedErrorCallback = ZoneBinaryCallbackOfFutureOrOfT$Object$StackTrace().as(this.errorCallback); |
+ return this[_zone].runBinary(FutureOrOfT(), core.Object, core.StackTrace)(typedErrorCallback, asyncError.error, asyncError.stackTrace); |
} else { |
- return this[_zone].runUnary(dart.dynamic, dart.dynamic)(dynamicTodynamic()._check(this.errorCallback), asyncError.error); |
+ return this[_zone].runUnary(FutureOrOfT(), dart.dynamic)(dynamicToFutureOrOfT()._check(this.errorCallback), asyncError.error); |
} |
} |
handleWhenComplete() { |
@@ -18407,9 +18427,9 @@ async._FutureListener$ = dart.generic((S, T) => { |
hasErrorCallback: dart.definiteFunctionType(core.bool, []) |
}), |
methods: () => ({ |
- handleValue: dart.definiteFunctionType(dart.dynamic, [S]), |
+ handleValue: dart.definiteFunctionType(async.FutureOr$(T), [S]), |
matchesErrorTest: dart.definiteFunctionType(core.bool, [async.AsyncError]), |
- handleError: dart.definiteFunctionType(dart.dynamic, [async.AsyncError]), |
+ handleError: dart.definiteFunctionType(async.FutureOr$(T), [async.AsyncError]), |
handleWhenComplete: dart.definiteFunctionType(dart.dynamic, []) |
}) |
}); |
@@ -18510,7 +18530,7 @@ async._Future$ = dart.flattenFutures(dart.generic(T => { |
if (!core.identical(currentZone, async._ROOT_ZONE)) { |
f = currentZone.registerUnaryCallback(async.FutureOr$(E), T)(f); |
if (onError != null) { |
- onError = async._registerErrorHandler(T)(onError, currentZone); |
+ onError = async._registerErrorHandler(E)(onError, currentZone); |
} |
} |
return this[_thenNoZoneRegistration](E)(f, onError); |
@@ -18519,7 +18539,7 @@ async._Future$ = dart.flattenFutures(dart.generic(T => { |
[_thenNoZoneRegistration](E) { |
return (f, onError) => { |
let result = new (async._Future$(E))(); |
- this[_addListener](new (async._FutureListener$(T, E)).then(result, f, onError)); |
+ this[_addListener](new (async._FutureListener$(T, E)).then(result, async._FutureOnValue$(T, E)._check(f), onError)); |
return result; |
}; |
} |
@@ -19211,10 +19231,10 @@ async.StreamTransformer$ = dart.generic((S, T) => { |
}); |
async.StreamTransformer = StreamTransformer(); |
async.StreamIterator$ = dart.generic(T => { |
- let _StreamIteratorImplOfT = () => (_StreamIteratorImplOfT = dart.constFn(async._StreamIteratorImpl$(T)))(); |
+ let _StreamIteratorOfT = () => (_StreamIteratorOfT = dart.constFn(async._StreamIterator$(T)))(); |
class StreamIterator extends core.Object { |
static new(stream) { |
- return new (_StreamIteratorImplOfT())(stream); |
+ return new (_StreamIteratorOfT())(stream); |
} |
} |
dart.addTypeTests(StreamIterator); |
@@ -20082,36 +20102,6 @@ async._StreamImplEvents$ = dart.generic(T => { |
return _StreamImplEvents; |
}); |
async._StreamImplEvents = _StreamImplEvents(); |
-const _unlink = Symbol('_unlink'); |
-const _insertBefore = Symbol('_insertBefore'); |
-async._BroadcastLinkedList = class _BroadcastLinkedList extends core.Object { |
- new() { |
- this[_next$] = null; |
- this[_previous$] = null; |
- } |
- [_unlink]() { |
- this[_previous$][_next$] = this[_next$]; |
- this[_next$][_previous$] = this[_previous$]; |
- this[_next$] = this[_previous$] = this; |
- } |
- [_insertBefore](newNext) { |
- let newPrevious = newNext[_previous$]; |
- newPrevious[_next$] = this; |
- newNext[_previous$] = this[_previous$]; |
- this[_previous$][_next$] = newNext; |
- this[_previous$] = newPrevious; |
- } |
-}; |
-dart.setSignature(async._BroadcastLinkedList, { |
- fields: () => ({ |
- [_next$]: async._BroadcastLinkedList, |
- [_previous$]: async._BroadcastLinkedList |
- }), |
- methods: () => ({ |
- [_unlink]: dart.definiteFunctionType(dart.void, []), |
- [_insertBefore]: dart.definiteFunctionType(dart.void, [async._BroadcastLinkedList]) |
- }) |
-}); |
async._BroadcastCallback$ = dart.generic(T => { |
const _BroadcastCallback = dart.typedef('_BroadcastCallback', () => dart.functionType(dart.void, [async.StreamSubscription$(T)])); |
return _BroadcastCallback; |
@@ -20163,7 +20153,7 @@ async._DoneStreamSubscription$ = dart.generic(T => { |
} |
} |
cancel() { |
- return null; |
+ return async.Future._nullFuture; |
} |
asFuture(E) { |
return futureValue => { |
@@ -20339,7 +20329,7 @@ async._BroadcastSubscriptionWrapper$ = dart.generic(T => { |
} |
cancel() { |
this[_stream][_cancelSubscription](); |
- return null; |
+ return async.Future._nullFuture; |
} |
get isPaused() { |
return this[_stream][_isSubscriptionPaused]; |
@@ -20369,146 +20359,109 @@ async._BroadcastSubscriptionWrapper$ = dart.generic(T => { |
return _BroadcastSubscriptionWrapper; |
}); |
async._BroadcastSubscriptionWrapper = _BroadcastSubscriptionWrapper(); |
-const _current$1 = Symbol('_current'); |
-const _futureOrPrefetch = Symbol('_futureOrPrefetch'); |
-const _clear = Symbol('_clear'); |
-async._StreamIteratorImpl$ = dart.generic(T => { |
+const _stateData = Symbol('_stateData'); |
+const _initializeOrDone = Symbol('_initializeOrDone'); |
+async._StreamIterator$ = dart.generic(T => { |
+ let StreamOfT = () => (StreamOfT = dart.constFn(async.Stream$(T)))(); |
+ let StreamSubscriptionOfT = () => (StreamSubscriptionOfT = dart.constFn(async.StreamSubscription$(T)))(); |
let StreamIteratorOfT = () => (StreamIteratorOfT = dart.constFn(async.StreamIterator$(T)))(); |
- class _StreamIteratorImpl extends core.Object { |
+ class _StreamIterator extends core.Object { |
new(stream) { |
+ this[_stateData] = stream; |
this[_subscription] = null; |
- this[_current$1] = null; |
- this[_futureOrPrefetch] = null; |
- this[_state] = async._StreamIteratorImpl._STATE_FOUND; |
- this[_subscription] = stream.listen(dart.bind(this, _onData), {onError: dart.bind(this, _onError), onDone: dart.bind(this, _onDone), cancelOnError: true}); |
+ this[_isPaused] = false; |
} |
get current() { |
- return this[_current$1]; |
+ if (this[_subscription] != null && dart.test(this[_isPaused])) { |
+ return T.as(this[_stateData]); |
+ } |
+ return null; |
} |
moveNext() { |
- if (this[_state] == async._StreamIteratorImpl._STATE_DONE) { |
- return new (_FutureOfbool()).immediate(false); |
- } |
- if (this[_state] == async._StreamIteratorImpl._STATE_MOVING) { |
- dart.throw(new core.StateError("Already waiting for next.")); |
- } |
- if (this[_state] == async._StreamIteratorImpl._STATE_FOUND) { |
- this[_state] = async._StreamIteratorImpl._STATE_MOVING; |
- this[_current$1] = null; |
- let result = new (_FutureOfbool())(); |
- this[_futureOrPrefetch] = result; |
- return result; |
- } else { |
- dart.assert(dart.notNull(this[_state]) >= async._StreamIteratorImpl._STATE_EXTRA_DATA); |
- switch (this[_state]) { |
- case async._StreamIteratorImpl._STATE_EXTRA_DATA: |
- { |
- this[_state] = async._StreamIteratorImpl._STATE_FOUND; |
- this[_current$1] = T.as(this[_futureOrPrefetch]); |
- this[_futureOrPrefetch] = null; |
- this[_subscription].resume(); |
- return new (_FutureOfbool()).immediate(true); |
- } |
- case async._StreamIteratorImpl._STATE_EXTRA_ERROR: |
- { |
- let prefetch = async.AsyncError._check(this[_futureOrPrefetch]); |
- this[_clear](); |
- return new (_FutureOfbool()).immediateError(prefetch.error, prefetch.stackTrace); |
- } |
- case async._StreamIteratorImpl._STATE_EXTRA_DONE: |
- { |
- this[_clear](); |
- return new (_FutureOfbool()).immediate(false); |
- } |
+ if (this[_subscription] != null) { |
+ if (dart.test(this[_isPaused])) { |
+ let future = new (_FutureOfbool())(); |
+ this[_stateData] = future; |
+ this[_isPaused] = false; |
+ this[_subscription].resume(); |
+ return future; |
} |
+ dart.throw(new core.StateError("Already waiting for next.")); |
} |
+ return this[_initializeOrDone](); |
} |
- [_clear]() { |
- this[_subscription] = null; |
- this[_futureOrPrefetch] = null; |
- this[_current$1] = null; |
- this[_state] = async._StreamIteratorImpl._STATE_DONE; |
+ [_initializeOrDone]() { |
+ dart.assert(this[_subscription] == null); |
+ let stateData = this[_stateData]; |
+ if (stateData != null) { |
+ let stream = StreamOfT().as(stateData); |
+ this[_subscription] = stream.listen(dart.bind(this, _onData), {onError: dart.bind(this, _onError), onDone: dart.bind(this, _onDone), cancelOnError: true}); |
+ let future = new (_FutureOfbool())(); |
+ this[_stateData] = future; |
+ return future; |
+ } |
+ return new (_FutureOfbool()).immediate(false); |
} |
cancel() { |
- let subscription = this[_subscription]; |
- if (subscription == null) return null; |
- if (this[_state] == async._StreamIteratorImpl._STATE_MOVING) { |
- let hasNext = _FutureOfbool().as(this[_futureOrPrefetch]); |
- this[_clear](); |
- hasNext[_complete](false); |
- } else { |
- this[_clear](); |
+ let subscription = StreamSubscriptionOfT()._check(this[_subscription]); |
+ let stateData = this[_stateData]; |
+ this[_stateData] = null; |
+ if (subscription != null) { |
+ this[_subscription] = null; |
+ if (!dart.test(this[_isPaused])) { |
+ let future = _FutureOfbool().as(stateData); |
+ future[_asyncComplete](false); |
+ } |
+ return subscription.cancel(); |
} |
- return subscription.cancel(); |
+ return async.Future._nullFuture; |
} |
[_onData](data) { |
T._check(data); |
- if (this[_state] == async._StreamIteratorImpl._STATE_MOVING) { |
- this[_current$1] = data; |
- let hasNext = _FutureOfbool().as(this[_futureOrPrefetch]); |
- this[_futureOrPrefetch] = null; |
- this[_state] = async._StreamIteratorImpl._STATE_FOUND; |
- hasNext[_complete](true); |
- return; |
- } |
- this[_subscription].pause(); |
- dart.assert(this[_futureOrPrefetch] == null); |
- this[_futureOrPrefetch] = data; |
- this[_state] = async._StreamIteratorImpl._STATE_EXTRA_DATA; |
+ dart.assert(this[_subscription] != null && !dart.test(this[_isPaused])); |
+ let moveNextFuture = _FutureOfbool().as(this[_stateData]); |
+ this[_stateData] = data; |
+ this[_isPaused] = true; |
+ moveNextFuture[_complete](true); |
+ if (this[_subscription] != null && dart.test(this[_isPaused])) this[_subscription].pause(); |
} |
[_onError](error, stackTrace) { |
if (stackTrace === void 0) stackTrace = null; |
- if (this[_state] == async._StreamIteratorImpl._STATE_MOVING) { |
- let hasNext = _FutureOfbool().as(this[_futureOrPrefetch]); |
- this[_clear](); |
- hasNext[_completeError](error, stackTrace); |
- return; |
- } |
- this[_subscription].pause(); |
- dart.assert(this[_futureOrPrefetch] == null); |
- this[_futureOrPrefetch] = new async.AsyncError(error, stackTrace); |
- this[_state] = async._StreamIteratorImpl._STATE_EXTRA_ERROR; |
+ dart.assert(this[_subscription] != null && !dart.test(this[_isPaused])); |
+ let moveNextFuture = _FutureOfbool().as(this[_stateData]); |
+ this[_subscription] = null; |
+ this[_stateData] = null; |
+ moveNextFuture[_completeError](error, stackTrace); |
} |
[_onDone]() { |
- if (this[_state] == async._StreamIteratorImpl._STATE_MOVING) { |
- let hasNext = _FutureOfbool().as(this[_futureOrPrefetch]); |
- this[_clear](); |
- hasNext[_complete](false); |
- return; |
- } |
- this[_subscription].pause(); |
- this[_futureOrPrefetch] = null; |
- this[_state] = async._StreamIteratorImpl._STATE_EXTRA_DONE; |
+ dart.assert(this[_subscription] != null && !dart.test(this[_isPaused])); |
+ let moveNextFuture = _FutureOfbool().as(this[_stateData]); |
+ this[_subscription] = null; |
+ this[_stateData] = null; |
+ moveNextFuture[_complete](false); |
} |
} |
- dart.addTypeTests(_StreamIteratorImpl); |
- _StreamIteratorImpl[dart.implements] = () => [StreamIteratorOfT()]; |
- dart.setSignature(_StreamIteratorImpl, { |
+ dart.addTypeTests(_StreamIterator); |
+ _StreamIterator[dart.implements] = () => [StreamIteratorOfT()]; |
+ dart.setSignature(_StreamIterator, { |
fields: () => ({ |
[_subscription]: async.StreamSubscription, |
- [_current$1]: T, |
- [_futureOrPrefetch]: dart.dynamic, |
- [_state]: core.int |
+ [_stateData]: core.Object, |
+ [_isPaused]: core.bool |
}), |
getters: () => ({current: dart.definiteFunctionType(T, [])}), |
methods: () => ({ |
moveNext: dart.definiteFunctionType(async.Future$(core.bool), []), |
- [_clear]: dart.definiteFunctionType(dart.void, []), |
+ [_initializeOrDone]: dart.definiteFunctionType(async.Future$(core.bool), []), |
cancel: dart.definiteFunctionType(async.Future, []), |
[_onData]: dart.definiteFunctionType(dart.void, [T]), |
[_onError]: dart.definiteFunctionType(dart.void, [core.Object], [core.StackTrace]), |
[_onDone]: dart.definiteFunctionType(dart.void, []) |
}) |
}); |
- return _StreamIteratorImpl; |
-}); |
-async._StreamIteratorImpl = _StreamIteratorImpl(); |
-async._StreamIteratorImpl._STATE_FOUND = 0; |
-async._StreamIteratorImpl._STATE_DONE = 1; |
-async._StreamIteratorImpl._STATE_MOVING = 2; |
-async._StreamIteratorImpl._STATE_EXTRA_DATA = 3; |
-async._StreamIteratorImpl._STATE_EXTRA_ERROR = 4; |
-async._StreamIteratorImpl._STATE_EXTRA_DONE = 5; |
+ return _StreamIterator; |
+}); |
+async._StreamIterator = _StreamIterator(); |
async._EmptyStream$ = dart.generic(T => { |
let _DoneStreamSubscriptionOfT = () => (_DoneStreamSubscriptionOfT = dart.constFn(async._DoneStreamSubscription$(T)))(); |
let TTovoid = () => (TTovoid = dart.constFn(dart.functionType(dart.void, [T])))(); |
@@ -20551,7 +20504,7 @@ async._runUserCode = function(userCode, onSuccess, onError) { |
dart.lazyFn(async._runUserCode, () => FnAndFnAndFnTodynamic()); |
async._cancelAndError = function(subscription, future, error, stackTrace) { |
let cancelFuture = subscription.cancel(); |
- if (async.Future.is(cancelFuture)) { |
+ if (async.Future.is(cancelFuture) && !core.identical(cancelFuture, async.Future._nullFuture)) { |
cancelFuture.whenComplete(dart.fn(() => future[_completeError](error, stackTrace), VoidTovoid$())); |
} else { |
future[_completeError](error, stackTrace); |
@@ -20576,7 +20529,7 @@ async._cancelAndErrorClosure = function(subscription, future) { |
dart.fn(async._cancelAndErrorClosure, StreamSubscriptionAnd_FutureTo_ErrorCallback()); |
async._cancelAndValue = function(subscription, future, value) { |
let cancelFuture = subscription.cancel(); |
- if (async.Future.is(cancelFuture)) { |
+ if (async.Future.is(cancelFuture) && !core.identical(cancelFuture, async.Future._nullFuture)) { |
cancelFuture.whenComplete(dart.fn(() => future[_complete](value), VoidTovoid$())); |
} else { |
future[_complete](value); |
@@ -20859,6 +20812,7 @@ async._HandleErrorStream$ = dart.generic(T => { |
async._HandleErrorStream = _HandleErrorStream(); |
const _count = Symbol('_count'); |
async._TakeStream$ = dart.generic(T => { |
+ let _DoneStreamSubscriptionOfT = () => (_DoneStreamSubscriptionOfT = dart.constFn(async._DoneStreamSubscription$(T)))(); |
let _StateStreamSubscriptionOfT = () => (_StateStreamSubscriptionOfT = dart.constFn(async._StateStreamSubscription$(T)))(); |
let _EventSinkOfT = () => (_EventSinkOfT = dart.constFn(async._EventSink$(T)))(); |
let TTovoid = () => (TTovoid = dart.constFn(dart.functionType(dart.void, [T])))(); |
@@ -20869,6 +20823,10 @@ async._TakeStream$ = dart.generic(T => { |
if (!(typeof count == 'number')) dart.throw(new core.ArgumentError(count)); |
} |
[_createSubscription](onData, onError, onDone, cancelOnError) { |
+ if (this[_count] == 0) { |
+ this[_source$].listen(null).cancel(); |
+ return new (_DoneStreamSubscriptionOfT())(onDone); |
+ } |
return new (_StateStreamSubscriptionOfT())(this, onData, onError, onDone, cancelOnError, this[_count]); |
} |
[_handleData](inputEvent, sink) { |
@@ -21171,7 +21129,7 @@ async._SinkTransformerStreamSubscription$ = dart.generic((S, T) => { |
if (dart.test(this[_isSubscribed])) { |
let subscription = this[_subscription]; |
this[_subscription] = null; |
- subscription.cancel(); |
+ return subscription.cancel(); |
} |
return null; |
} |
@@ -22475,8 +22433,8 @@ async.runZoned = function(R) { |
if (onError != null) { |
errorHandler = dart.fn((self, parent, zone, error, stackTrace) => { |
try { |
- if (ZoneBinaryCallbackOfdynamic$dynamic$StackTrace().is(onError)) { |
- return R.as(self.parent.runBinary(dart.dynamic, dart.dynamic, core.StackTrace)(onError, error, stackTrace)); |
+ if (async.ZoneBinaryCallback$(R, dart.dynamic, core.StackTrace).is(onError)) { |
+ return self.parent.runBinary(R, dart.dynamic, core.StackTrace)(onError, error, stackTrace); |
} |
return self.parent.runUnary(dart.dynamic, dart.dynamic)(dynamicTodynamic()._check(onError), error); |
} catch (e) { |
@@ -22938,7 +22896,7 @@ collection._HashMapKeyIterable$ = dart.generic(E => { |
let _HashMapKeyIteratorOfE = () => (_HashMapKeyIteratorOfE = dart.constFn(collection._HashMapKeyIterator$(E)))(); |
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))(); |
let _HashMapOfE$dynamic = () => (_HashMapOfE$dynamic = dart.constFn(collection._HashMap$(E, dart.dynamic)))(); |
- class _HashMapKeyIterable extends core.Iterable$(E) { |
+ class _HashMapKeyIterable extends _internal.EfficientLengthIterable$(E) { |
new(map) { |
this[_map$0] = map; |
super.new(); |
@@ -22965,7 +22923,6 @@ collection._HashMapKeyIterable$ = dart.generic(E => { |
} |
} |
} |
- _HashMapKeyIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(_HashMapKeyIterable, { |
fields: () => ({[_map$0]: _HashMapOfE$dynamic()}), |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}) |
@@ -22981,7 +22938,7 @@ collection._HashMapKeyIterable$ = dart.generic(E => { |
}); |
collection._HashMapKeyIterable = _HashMapKeyIterable(); |
const _offset = Symbol('_offset'); |
-const _current$2 = Symbol('_current'); |
+const _current$1 = Symbol('_current'); |
collection._HashMapKeyIterator$ = dart.generic(E => { |
let IteratorOfE = () => (IteratorOfE = dart.constFn(core.Iterator$(E)))(); |
let _HashMapOfE$dynamic = () => (_HashMapOfE$dynamic = dart.constFn(collection._HashMap$(E, dart.dynamic)))(); |
@@ -22991,10 +22948,10 @@ collection._HashMapKeyIterator$ = dart.generic(E => { |
this[_map$0] = map; |
this[_keys] = keys; |
this[_offset] = 0; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
moveNext() { |
let keys = this[_keys]; |
@@ -23002,10 +22959,10 @@ collection._HashMapKeyIterator$ = dart.generic(E => { |
if (keys !== this[_map$0][_keys]) { |
dart.throw(new core.ConcurrentModificationError(this[_map$0])); |
} else if (dart.notNull(offset) >= keys.length) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
return false; |
} else { |
- this[_current$2] = keys[offset]; |
+ this[_current$1] = keys[offset]; |
this[_offset] = dart.notNull(offset) + 1; |
return true; |
} |
@@ -23018,7 +22975,7 @@ collection._HashMapKeyIterator$ = dart.generic(E => { |
[_map$0]: _HashMapOfE$dynamic(), |
[_keys]: ListOfE(), |
[_offset]: core.int, |
- [_current$2]: E |
+ [_current$1]: E |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -23181,7 +23138,7 @@ const _isKeys = Symbol('_isKeys'); |
collection._Es6MapIterable$ = dart.generic(E => { |
let _Es6MapIteratorOfE = () => (_Es6MapIteratorOfE = dart.constFn(collection._Es6MapIterator$(E)))(); |
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))(); |
- class _Es6MapIterable extends core.Iterable$(E) { |
+ class _Es6MapIterable extends _internal.EfficientLengthIterable$(E) { |
new(map, isKeys) { |
this[_map$0] = map; |
this[_isKeys] = isKeys; |
@@ -23219,7 +23176,6 @@ collection._Es6MapIterable$ = dart.generic(E => { |
} |
} |
} |
- _Es6MapIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(_Es6MapIterable, { |
fields: () => ({ |
[_map$0]: dart.dynamic, |
@@ -23249,7 +23205,7 @@ collection._Es6MapIterator$ = dart.generic(E => { |
this[_isKeys] = isKeys; |
this[_jsIterator$] = null; |
this[_next$0] = null; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
this[_done] = null; |
if (dart.test(this[_isKeys])) { |
this[_jsIterator$] = dart.dload(this[_map$0], _map$0).keys(); |
@@ -23259,7 +23215,7 @@ collection._Es6MapIterator$ = dart.generic(E => { |
this[_done] = false; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
moveNext() { |
if (!dart.equals(this[_modifications$], dart.dload(this[_map$0], _modifications$))) { |
@@ -23269,11 +23225,11 @@ collection._Es6MapIterator$ = dart.generic(E => { |
this[_next$0] = this[_jsIterator$].next(); |
let done = this[_next$0].done; |
if (done) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
this[_done] = true; |
return false; |
} else { |
- this[_current$2] = this[_next$0].value; |
+ this[_current$1] = this[_next$0].value; |
return true; |
} |
} |
@@ -23287,7 +23243,7 @@ collection._Es6MapIterator$ = dart.generic(E => { |
[_isKeys]: core.bool, |
[_jsIterator$]: dart.dynamic, |
[_next$0]: dart.dynamic, |
- [_current$2]: E, |
+ [_current$1]: E, |
[_done]: core.bool |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
@@ -24078,10 +24034,10 @@ collection._HashSetIterator$ = dart.generic(E => { |
this[_set] = set; |
this[_elements] = elements; |
this[_offset] = 0; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
moveNext() { |
let elements = this[_elements]; |
@@ -24089,10 +24045,10 @@ collection._HashSetIterator$ = dart.generic(E => { |
if (elements !== dart.dload(this[_set], _elements)) { |
dart.throw(new core.ConcurrentModificationError(this[_set])); |
} else if (dart.notNull(offset) >= elements.length) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
return false; |
} else { |
- this[_current$2] = elements[offset]; |
+ this[_current$1] = elements[offset]; |
this[_offset] = dart.notNull(offset) + 1; |
return true; |
} |
@@ -24105,7 +24061,7 @@ collection._HashSetIterator$ = dart.generic(E => { |
[_set]: dart.dynamic, |
[_elements]: ListOfE(), |
[_offset]: core.int, |
- [_current$2]: E |
+ [_current$1]: E |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -24559,20 +24515,20 @@ collection._LinkedHashSetIterator$ = dart.generic(E => { |
this[_set] = set; |
this[_modifications$] = modifications; |
this[_cell$] = null; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
this[_cell$] = this[_set][_first$]; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
moveNext() { |
if (this[_modifications$] != this[_set][_modifications$]) { |
dart.throw(new core.ConcurrentModificationError(this[_set])); |
} else if (this[_cell$] == null) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
return false; |
} else { |
- this[_current$2] = E._check(this[_cell$][_element]); |
+ this[_current$1] = E._check(this[_cell$][_element]); |
this[_cell$] = this[_cell$][_next$0]; |
return true; |
} |
@@ -24585,7 +24541,7 @@ collection._LinkedHashSetIterator$ = dart.generic(E => { |
[_set]: collection._LinkedHashSet, |
[_modifications$]: core.int, |
[_cell$]: collection._LinkedHashSetCell, |
- [_current$2]: E |
+ [_current$1]: E |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -24850,7 +24806,7 @@ collection.IterableMixin$ = dart.generic(E => { |
return SetOfE().from(this); |
} |
get length() { |
- dart.assert(!_internal.EfficientLength.is(this)); |
+ dart.assert(!_internal.EfficientLengthIterable.is(this)); |
let count = 0; |
let it = this[dartx.iterator]; |
while (dart.test(it.moveNext())) { |
@@ -25278,9 +25234,9 @@ collection.LinkedHashSet$ = dart.generic(E => { |
}); |
collection.LinkedHashSet = LinkedHashSet(); |
const _modificationCount = Symbol('_modificationCount'); |
-const _insertBefore$ = Symbol('_insertBefore'); |
+const _insertBefore = Symbol('_insertBefore'); |
const _list = Symbol('_list'); |
-const _unlink$ = Symbol('_unlink'); |
+const _unlink = Symbol('_unlink'); |
collection.LinkedList$ = dart.generic(E => { |
let IterableOfE = () => (IterableOfE = dart.constFn(core.Iterable$(E)))(); |
let _LinkedListIteratorOfE = () => (_LinkedListIteratorOfE = dart.constFn(collection._LinkedListIterator$(E)))(); |
@@ -25294,12 +25250,12 @@ collection.LinkedList$ = dart.generic(E => { |
} |
addFirst(entry) { |
E._check(entry); |
- this[_insertBefore$](this[_first$], entry, {updateFirst: true}); |
+ this[_insertBefore](this[_first$], entry, {updateFirst: true}); |
this[_first$] = entry; |
} |
add(entry) { |
E._check(entry); |
- this[_insertBefore$](this[_first$], entry, {updateFirst: false}); |
+ this[_insertBefore](this[_first$], entry, {updateFirst: false}); |
} |
addAll(entries) { |
IterableOfE()._check(entries); |
@@ -25308,7 +25264,7 @@ collection.LinkedList$ = dart.generic(E => { |
remove(entry) { |
E._check(entry); |
if (!dart.equals(entry[_list], this)) return false; |
- this[_unlink$](entry); |
+ this[_unlink](entry); |
return true; |
} |
get iterator() { |
@@ -25365,7 +25321,7 @@ collection.LinkedList$ = dart.generic(E => { |
get isEmpty() { |
return this[_length$1] == 0; |
} |
- [_insertBefore$](entry, newEntry, opts) { |
+ [_insertBefore](entry, newEntry, opts) { |
E._check(entry); |
E._check(newEntry); |
let updateFirst = opts && 'updateFirst' in opts ? opts.updateFirst : null; |
@@ -25392,7 +25348,7 @@ collection.LinkedList$ = dart.generic(E => { |
} |
this[_length$1] = dart.notNull(this[_length$1]) + 1; |
} |
- [_unlink$](entry) { |
+ [_unlink](entry) { |
E._check(entry); |
this[_modificationCount] = dart.notNull(this[_modificationCount]) + 1; |
entry[_next$0][_previous$0] = entry[_previous$0]; |
@@ -25419,8 +25375,8 @@ collection.LinkedList$ = dart.generic(E => { |
addAll: dart.definiteFunctionType(dart.void, [IterableOfE()]), |
remove: dart.definiteFunctionType(core.bool, [E]), |
clear: dart.definiteFunctionType(dart.void, []), |
- [_insertBefore$]: dart.definiteFunctionType(dart.void, [E, E], {updateFirst: core.bool}), |
- [_unlink$]: dart.definiteFunctionType(dart.void, [E]) |
+ [_insertBefore]: dart.definiteFunctionType(dart.void, [E, E], {updateFirst: core.bool}), |
+ [_unlink]: dart.definiteFunctionType(dart.void, [E]) |
}) |
}); |
dart.defineExtensionMembers(LinkedList, [ |
@@ -25446,21 +25402,21 @@ collection._LinkedListIterator$ = dart.generic(E => { |
this[_modificationCount] = list[_modificationCount]; |
this[_next$0] = list[_first$]; |
this[_visitedFirst] = false; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
moveNext() { |
if (this[_modificationCount] != this[_list][_modificationCount]) { |
dart.throw(new core.ConcurrentModificationError(this)); |
} |
if (dart.test(this[_list].isEmpty) || dart.test(this[_visitedFirst]) && core.identical(this[_next$0], this[_list].first)) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
return false; |
} |
this[_visitedFirst] = true; |
- this[_current$2] = E._check(this[_next$0]); |
+ this[_current$1] = E._check(this[_next$0]); |
this[_next$0] = this[_next$0][_next$0]; |
return true; |
} |
@@ -25471,7 +25427,7 @@ collection._LinkedListIterator$ = dart.generic(E => { |
fields: () => ({ |
[_list]: LinkedListOfE(), |
[_modificationCount]: core.int, |
- [_current$2]: E, |
+ [_current$1]: E, |
[_next$0]: LinkedListEntryOfE(), |
[_visitedFirst]: core.bool |
}), |
@@ -25493,23 +25449,23 @@ collection.LinkedListEntry$ = dart.generic(E => { |
return this[_list]; |
} |
unlink() { |
- this[_list][_unlink$](E._check(this)); |
+ this[_list][_unlink](E._check(this)); |
} |
get next() { |
- if (core.identical(this, this[_next$0])) return null; |
+ if (this[_list] == null || core.identical(this[_list].first, this[_next$0])) return null; |
return this[_next$0]; |
} |
get previous() { |
- if (core.identical(this, this[_previous$0])) return null; |
+ if (this[_list] == null || core.identical(this, this[_list].first)) return null; |
return this[_previous$0]; |
} |
insertAfter(entry) { |
E._check(entry); |
- this[_list][_insertBefore$](this[_next$0], entry, {updateFirst: false}); |
+ this[_list][_insertBefore](this[_next$0], entry, {updateFirst: false}); |
} |
insertBefore(entry) { |
E._check(entry); |
- this[_list][_insertBefore$](E.as(this), entry, {updateFirst: true}); |
+ this[_list][_insertBefore](E.as(this), entry, {updateFirst: true}); |
} |
} |
dart.addTypeTests(LinkedListEntry); |
@@ -25678,7 +25634,7 @@ collection.UnmodifiableMapBase = UnmodifiableMapBase(); |
collection._MapBaseValueIterable$ = dart.generic((K, V) => { |
let _MapBaseValueIteratorOfK$V = () => (_MapBaseValueIteratorOfK$V = dart.constFn(collection._MapBaseValueIterator$(K, V)))(); |
let MapOfK$V = () => (MapOfK$V = dart.constFn(core.Map$(K, V)))(); |
- class _MapBaseValueIterable extends core.Iterable$(V) { |
+ class _MapBaseValueIterable extends _internal.EfficientLengthIterable$(V) { |
new(map) { |
this[_map$0] = map; |
super.new(); |
@@ -25705,7 +25661,6 @@ collection._MapBaseValueIterable$ = dart.generic((K, V) => { |
return new (_MapBaseValueIteratorOfK$V())(this[_map$0]); |
} |
} |
- _MapBaseValueIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(_MapBaseValueIterable, { |
fields: () => ({[_map$0]: MapOfK$V()}), |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(V), [])}) |
@@ -25730,18 +25685,18 @@ collection._MapBaseValueIterator$ = dart.generic((K, V) => { |
new(map) { |
this[_map$0] = map; |
this[_keys] = map[dartx.keys][dartx.iterator]; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
} |
moveNext() { |
if (dart.test(this[_keys].moveNext())) { |
- this[_current$2] = this[_map$0][dartx._get](this[_keys].current); |
+ this[_current$1] = this[_map$0][dartx._get](this[_keys].current); |
return true; |
} |
- this[_current$2] = null; |
+ this[_current$1] = null; |
return false; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
} |
dart.addTypeTests(_MapBaseValueIterator); |
@@ -25750,7 +25705,7 @@ collection._MapBaseValueIterator$ = dart.generic((K, V) => { |
fields: () => ({ |
[_keys]: IteratorOfK(), |
[_map$0]: MapOfK$V(), |
- [_current$2]: V |
+ [_current$1]: V |
}), |
getters: () => ({current: dart.definiteFunctionType(V, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -25986,7 +25941,7 @@ dart.setSignature(collection.Maps, { |
}); |
collection.Queue$ = dart.generic(E => { |
let ListQueueOfE = () => (ListQueueOfE = dart.constFn(collection.ListQueue$(E)))(); |
- let IterableOfE = () => (IterableOfE = dart.constFn(core.Iterable$(E)))(); |
+ let EfficientLengthIterableOfE = () => (EfficientLengthIterableOfE = dart.constFn(_internal.EfficientLengthIterable$(E)))(); |
class Queue extends core.Object { |
static new() { |
return new (ListQueueOfE())(); |
@@ -25994,33 +25949,30 @@ collection.Queue$ = dart.generic(E => { |
static from(elements) { |
return ListQueueOfE().from(elements); |
} |
- [Symbol.iterator]() { |
- return new dart.JsIterator(this.iterator); |
- } |
} |
dart.addTypeTests(Queue); |
- Queue[dart.implements] = () => [IterableOfE(), _internal.EfficientLength]; |
+ Queue[dart.implements] = () => [EfficientLengthIterableOfE()]; |
return Queue; |
}); |
collection.Queue = Queue(); |
const _previousLink = Symbol('_previousLink'); |
const _nextLink = Symbol('_nextLink'); |
const _link = Symbol('_link'); |
-collection._DoubleLink$ = dart.generic(E => { |
+collection._DoubleLink$ = dart.generic(Link => { |
class _DoubleLink extends core.Object { |
new() { |
this[_previousLink] = null; |
this[_nextLink] = null; |
} |
[_link](previous, next) { |
- E._check(previous); |
- E._check(next); |
+ Link._check(previous); |
+ Link._check(next); |
this[_nextLink] = next; |
this[_previousLink] = previous; |
if (previous != null) previous[_nextLink] = this; |
if (next != null) next[_previousLink] = this; |
} |
- [_unlink$]() { |
+ [_unlink]() { |
if (this[_previousLink] != null) this[_previousLink][_nextLink] = this[_nextLink]; |
if (this[_nextLink] != null) this[_nextLink][_previousLink] = this[_previousLink]; |
this[_nextLink] = null; |
@@ -26030,46 +25982,34 @@ collection._DoubleLink$ = dart.generic(E => { |
dart.addTypeTests(_DoubleLink); |
dart.setSignature(_DoubleLink, { |
fields: () => ({ |
- [_previousLink]: E, |
- [_nextLink]: E |
+ [_previousLink]: Link, |
+ [_nextLink]: Link |
}), |
methods: () => ({ |
- [_link]: dart.definiteFunctionType(dart.void, [E, E]), |
- [_unlink$]: dart.definiteFunctionType(dart.void, []) |
+ [_link]: dart.definiteFunctionType(dart.void, [Link, Link]), |
+ [_unlink]: dart.definiteFunctionType(dart.void, []) |
}) |
}); |
return _DoubleLink; |
}); |
collection._DoubleLink = _DoubleLink(); |
collection.DoubleLinkedQueueEntry$ = dart.generic(E => { |
- let _UserDoubleLinkedQueueEntryOfE = () => (_UserDoubleLinkedQueueEntryOfE = dart.constFn(collection._UserDoubleLinkedQueueEntry$(E)))(); |
- class DoubleLinkedQueueEntry extends core.Object { |
- static new(element) { |
- return new (_UserDoubleLinkedQueueEntryOfE())(element); |
- } |
- } |
- dart.addTypeTests(DoubleLinkedQueueEntry); |
- return DoubleLinkedQueueEntry; |
-}); |
-collection.DoubleLinkedQueueEntry = DoubleLinkedQueueEntry(); |
-collection._UserDoubleLinkedQueueEntry$ = dart.generic(E => { |
- let _UserDoubleLinkedQueueEntryOfE = () => (_UserDoubleLinkedQueueEntryOfE = dart.constFn(collection._UserDoubleLinkedQueueEntry$(E)))(); |
let DoubleLinkedQueueEntryOfE = () => (DoubleLinkedQueueEntryOfE = dart.constFn(collection.DoubleLinkedQueueEntry$(E)))(); |
- class _UserDoubleLinkedQueueEntry extends collection._DoubleLink { |
+ class DoubleLinkedQueueEntry extends collection._DoubleLink { |
new(element) { |
this.element = element; |
super.new(); |
} |
append(e) { |
E._check(e); |
- new (_UserDoubleLinkedQueueEntryOfE())(e)[_link](this, this[_nextLink]); |
+ new (DoubleLinkedQueueEntryOfE())(e)[_link](this, this[_nextLink]); |
} |
prepend(e) { |
E._check(e); |
- new (_UserDoubleLinkedQueueEntryOfE())(e)[_link](this[_previousLink], this); |
+ new (DoubleLinkedQueueEntryOfE())(e)[_link](this[_previousLink], this); |
} |
remove() { |
- this[_unlink$](); |
+ this[_unlink](); |
return this.element; |
} |
previousEntry() { |
@@ -26079,8 +26019,7 @@ collection._UserDoubleLinkedQueueEntry$ = dart.generic(E => { |
return this[_nextLink]; |
} |
} |
- _UserDoubleLinkedQueueEntry[dart.implements] = () => [DoubleLinkedQueueEntryOfE()]; |
- dart.setSignature(_UserDoubleLinkedQueueEntry, { |
+ dart.setSignature(DoubleLinkedQueueEntry, { |
fields: () => ({element: E}), |
methods: () => ({ |
append: dart.definiteFunctionType(dart.void, [E]), |
@@ -26090,22 +26029,23 @@ collection._UserDoubleLinkedQueueEntry$ = dart.generic(E => { |
nextEntry: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []) |
}) |
}); |
- return _UserDoubleLinkedQueueEntry; |
-}, _UserDoubleLinkedQueueEntry => { |
- dart.setBaseClass(_UserDoubleLinkedQueueEntry, collection._DoubleLink$(_UserDoubleLinkedQueueEntry)); |
+ return DoubleLinkedQueueEntry; |
+}, DoubleLinkedQueueEntry => { |
+ dart.setBaseClass(DoubleLinkedQueueEntry, collection._DoubleLink$(DoubleLinkedQueueEntry)); |
}); |
-collection._UserDoubleLinkedQueueEntry = _UserDoubleLinkedQueueEntry(); |
+collection.DoubleLinkedQueueEntry = DoubleLinkedQueueEntry(); |
const _queue = Symbol('_queue'); |
const _append = Symbol('_append'); |
const _prepend = Symbol('_prepend'); |
const _asNonSentinelEntry = Symbol('_asNonSentinelEntry'); |
collection._DoubleLinkedQueueEntry$ = dart.generic(E => { |
let _DoubleLinkedQueueElementOfE = () => (_DoubleLinkedQueueElementOfE = dart.constFn(collection._DoubleLinkedQueueElement$(E)))(); |
+ let _DoubleLinkedQueueEntryOfE = () => (_DoubleLinkedQueueEntryOfE = dart.constFn(collection._DoubleLinkedQueueEntry$(E)))(); |
let DoubleLinkedQueueOfE = () => (DoubleLinkedQueueOfE = dart.constFn(collection.DoubleLinkedQueue$(E)))(); |
- class _DoubleLinkedQueueEntry extends collection._DoubleLink { |
- new(queue) { |
+ class _DoubleLinkedQueueEntry extends collection.DoubleLinkedQueueEntry$(E) { |
+ new(element, queue) { |
this[_queue] = queue; |
- super.new(); |
+ super.new(element); |
} |
[_append](e) { |
E._check(e); |
@@ -26115,34 +26055,34 @@ collection._DoubleLinkedQueueEntry$ = dart.generic(E => { |
E._check(e); |
new (_DoubleLinkedQueueElementOfE())(e, this[_queue])[_link](this[_previousLink], this); |
} |
+ get [_element]() { |
+ return this.element; |
+ } |
nextEntry() { |
- return this[_nextLink][_asNonSentinelEntry](); |
+ let entry = _DoubleLinkedQueueEntryOfE()._check(this[_nextLink]); |
+ return entry[_asNonSentinelEntry](); |
} |
previousEntry() { |
- return this[_previousLink][_asNonSentinelEntry](); |
+ let entry = _DoubleLinkedQueueEntryOfE()._check(this[_previousLink]); |
+ return entry[_asNonSentinelEntry](); |
} |
} |
dart.setSignature(_DoubleLinkedQueueEntry, { |
fields: () => ({[_queue]: DoubleLinkedQueueOfE()}), |
+ getters: () => ({[_element]: dart.definiteFunctionType(E, [])}), |
methods: () => ({ |
[_append]: dart.definiteFunctionType(dart.void, [E]), |
- [_prepend]: dart.definiteFunctionType(dart.void, [E]), |
- nextEntry: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []), |
- previousEntry: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []) |
+ [_prepend]: dart.definiteFunctionType(dart.void, [E]) |
}) |
}); |
return _DoubleLinkedQueueEntry; |
-}, _DoubleLinkedQueueEntry => { |
- dart.setBaseClass(_DoubleLinkedQueueEntry, collection._DoubleLink$(_DoubleLinkedQueueEntry)); |
}); |
collection._DoubleLinkedQueueEntry = _DoubleLinkedQueueEntry(); |
const _elementCount = Symbol('_elementCount'); |
collection._DoubleLinkedQueueElement$ = dart.generic(E => { |
- let DoubleLinkedQueueEntryOfE = () => (DoubleLinkedQueueEntryOfE = dart.constFn(collection.DoubleLinkedQueueEntry$(E)))(); |
class _DoubleLinkedQueueElement extends collection._DoubleLinkedQueueEntry$(E) { |
new(element, queue) { |
- this.element = element; |
- super.new(queue); |
+ super.new(element, queue); |
} |
append(e) { |
E._check(e); |
@@ -26162,7 +26102,7 @@ collection._DoubleLinkedQueueElement$ = dart.generic(E => { |
} |
[_remove]() { |
this[_queue] = null; |
- this[_unlink$](); |
+ this[_unlink](); |
return this.element; |
} |
remove() { |
@@ -26176,14 +26116,9 @@ collection._DoubleLinkedQueueElement$ = dart.generic(E => { |
return this; |
} |
} |
- _DoubleLinkedQueueElement[dart.implements] = () => [DoubleLinkedQueueEntryOfE()]; |
dart.setSignature(_DoubleLinkedQueueElement, { |
- fields: () => ({element: E}), |
methods: () => ({ |
- append: dart.definiteFunctionType(dart.void, [E]), |
- prepend: dart.definiteFunctionType(dart.void, [E]), |
[_remove]: dart.definiteFunctionType(E, []), |
- remove: dart.definiteFunctionType(E, []), |
[_asNonSentinelEntry]: dart.definiteFunctionType(collection._DoubleLinkedQueueElement$(E), []) |
}) |
}); |
@@ -26193,7 +26128,7 @@ collection._DoubleLinkedQueueElement = _DoubleLinkedQueueElement(); |
collection._DoubleLinkedQueueSentinel$ = dart.generic(E => { |
class _DoubleLinkedQueueSentinel extends collection._DoubleLinkedQueueEntry$(E) { |
new(queue) { |
- super.new(queue); |
+ super.new(null, queue); |
this[_previousLink] = this; |
this[_nextLink] = this; |
} |
@@ -26203,12 +26138,11 @@ collection._DoubleLinkedQueueSentinel$ = dart.generic(E => { |
[_remove]() { |
dart.throw(_internal.IterableElementError.noElement()); |
} |
- get element() { |
+ get [_element]() { |
dart.throw(_internal.IterableElementError.noElement()); |
} |
} |
dart.setSignature(_DoubleLinkedQueueSentinel, { |
- getters: () => ({element: dart.definiteFunctionType(E, [])}), |
methods: () => ({ |
[_asNonSentinelEntry]: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []), |
[_remove]: dart.definiteFunctionType(E, []) |
@@ -26222,6 +26156,7 @@ collection.DoubleLinkedQueue$ = dart.generic(E => { |
let _DoubleLinkedQueueSentinelOfE = () => (_DoubleLinkedQueueSentinelOfE = dart.constFn(collection._DoubleLinkedQueueSentinel$(E)))(); |
let DoubleLinkedQueueOfE = () => (DoubleLinkedQueueOfE = dart.constFn(collection.DoubleLinkedQueue$(E)))(); |
let IterableOfE = () => (IterableOfE = dart.constFn(core.Iterable$(E)))(); |
+ let _DoubleLinkedQueueEntryOfE = () => (_DoubleLinkedQueueEntryOfE = dart.constFn(collection._DoubleLinkedQueueEntry$(E)))(); |
let _DoubleLinkedQueueElementOfE = () => (_DoubleLinkedQueueElementOfE = dart.constFn(collection._DoubleLinkedQueueElement$(E)))(); |
let _DoubleLinkedQueueIteratorOfE = () => (_DoubleLinkedQueueIteratorOfE = dart.constFn(collection._DoubleLinkedQueueIterator$(E)))(); |
let QueueOfE = () => (QueueOfE = dart.constFn(collection.Queue$(E)))(); |
@@ -26269,34 +26204,42 @@ collection.DoubleLinkedQueue$ = dart.generic(E => { |
} |
} |
removeLast() { |
- let lastEntry = this[_sentinel][_previousLink]; |
+ let lastEntry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_previousLink]); |
let result = lastEntry[_remove](); |
this[_elementCount] = dart.notNull(this[_elementCount]) - 1; |
return result; |
} |
removeFirst() { |
- let firstEntry = this[_sentinel][_nextLink]; |
+ let firstEntry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_nextLink]); |
let result = firstEntry[_remove](); |
this[_elementCount] = dart.notNull(this[_elementCount]) - 1; |
return result; |
} |
remove(o) { |
- let entry = this[_sentinel][_nextLink]; |
+ let entry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_nextLink]); |
while (!core.identical(entry, this[_sentinel])) { |
- if (dart.equals(entry.element, o)) { |
+ let equals = dart.equals(entry[_element], o); |
+ if (!core.identical(this, entry[_queue])) { |
+ dart.throw(new core.ConcurrentModificationError(this)); |
+ } |
+ if (equals) { |
entry[_remove](); |
this[_elementCount] = dart.notNull(this[_elementCount]) - 1; |
return true; |
} |
- entry = entry[_nextLink]; |
+ entry = _DoubleLinkedQueueEntryOfE()._check(entry[_nextLink]); |
} |
return false; |
} |
[_filter](test, removeMatching) { |
- let entry = this[_sentinel][_nextLink]; |
+ let entry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_nextLink]); |
while (!core.identical(entry, this[_sentinel])) { |
- let next = entry[_nextLink]; |
- if (core.identical(removeMatching, test(entry.element))) { |
+ let matches = test(entry[_element]); |
+ if (!core.identical(this, entry[_queue])) { |
+ dart.throw(new core.ConcurrentModificationError(this)); |
+ } |
+ let next = _DoubleLinkedQueueEntryOfE()._check(entry[_nextLink]); |
+ if (core.identical(removeMatching, matches)) { |
entry[_remove](); |
this[_elementCount] = dart.notNull(this[_elementCount]) - 1; |
} |
@@ -26310,26 +26253,26 @@ collection.DoubleLinkedQueue$ = dart.generic(E => { |
this[_filter](test, false); |
} |
get first() { |
- let firstEntry = this[_sentinel][_nextLink]; |
- return firstEntry.element; |
+ let firstEntry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_nextLink]); |
+ return firstEntry[_element]; |
} |
get last() { |
- let lastEntry = this[_sentinel][_previousLink]; |
- return lastEntry.element; |
+ let lastEntry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_previousLink]); |
+ return lastEntry[_element]; |
} |
get single() { |
if (core.identical(this[_sentinel][_nextLink], this[_sentinel][_previousLink])) { |
- let entry = this[_sentinel][_nextLink]; |
- return entry.element; |
+ let entry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_nextLink]); |
+ return entry[_element]; |
} |
dart.throw(_internal.IterableElementError.tooMany()); |
} |
- lastEntry() { |
- return this[_sentinel].previousEntry(); |
- } |
firstEntry() { |
return this[_sentinel].nextEntry(); |
} |
+ lastEntry() { |
+ return this[_sentinel].previousEntry(); |
+ } |
get isEmpty() { |
return core.identical(this[_sentinel][_nextLink], this[_sentinel]); |
} |
@@ -26338,13 +26281,18 @@ collection.DoubleLinkedQueue$ = dart.generic(E => { |
this[_sentinel][_previousLink] = this[_sentinel]; |
this[_elementCount] = 0; |
} |
- forEachEntry(f) { |
- let entry = this[_sentinel][_nextLink]; |
+ forEachEntry(action) { |
+ let entry = _DoubleLinkedQueueEntryOfE()._check(this[_sentinel][_nextLink]); |
while (!core.identical(entry, this[_sentinel])) { |
- let nextEntry = entry[_nextLink]; |
let element = _DoubleLinkedQueueElementOfE()._check(entry); |
- f(element); |
- entry = nextEntry; |
+ let next = _DoubleLinkedQueueEntryOfE()._check(element[_nextLink]); |
+ action(element); |
+ if (core.identical(this, entry[_queue])) { |
+ next = _DoubleLinkedQueueEntryOfE()._check(entry[_nextLink]); |
+ } else if (!core.identical(this, next[_queue])) { |
+ dart.throw(new core.ConcurrentModificationError(this)); |
+ } |
+ entry = next; |
} |
} |
get iterator() { |
@@ -26372,8 +26320,8 @@ collection.DoubleLinkedQueue$ = dart.generic(E => { |
[_filter]: dart.definiteFunctionType(dart.void, [ETobool(), core.bool]), |
removeWhere: dart.definiteFunctionType(dart.void, [ETobool()]), |
retainWhere: dart.definiteFunctionType(dart.void, [ETobool()]), |
- lastEntry: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []), |
firstEntry: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []), |
+ lastEntry: dart.definiteFunctionType(collection.DoubleLinkedQueueEntry$(E), []), |
clear: dart.definiteFunctionType(dart.void, []), |
forEachEntry: dart.definiteFunctionType(dart.void, [DoubleLinkedQueueEntryOfETovoid()]) |
}) |
@@ -26392,33 +26340,33 @@ collection.DoubleLinkedQueue$ = dart.generic(E => { |
collection.DoubleLinkedQueue = DoubleLinkedQueue(); |
const _nextEntry = Symbol('_nextEntry'); |
collection._DoubleLinkedQueueIterator$ = dart.generic(E => { |
+ let _DoubleLinkedQueueEntryOfE = () => (_DoubleLinkedQueueEntryOfE = dart.constFn(collection._DoubleLinkedQueueEntry$(E)))(); |
let _DoubleLinkedQueueElementOfE = () => (_DoubleLinkedQueueElementOfE = dart.constFn(collection._DoubleLinkedQueueElement$(E)))(); |
let IteratorOfE = () => (IteratorOfE = dart.constFn(core.Iterator$(E)))(); |
let _DoubleLinkedQueueSentinelOfE = () => (_DoubleLinkedQueueSentinelOfE = dart.constFn(collection._DoubleLinkedQueueSentinel$(E)))(); |
- let _DoubleLinkedQueueEntryOfE = () => (_DoubleLinkedQueueEntryOfE = dart.constFn(collection._DoubleLinkedQueueEntry$(E)))(); |
class _DoubleLinkedQueueIterator extends core.Object { |
new(sentinel) { |
this[_sentinel] = sentinel; |
- this[_nextEntry] = sentinel[_nextLink]; |
- this[_current$2] = null; |
+ this[_nextEntry] = _DoubleLinkedQueueEntryOfE()._check(sentinel[_nextLink]); |
+ this[_current$1] = null; |
} |
moveNext() { |
if (core.identical(this[_nextEntry], this[_sentinel])) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
this[_nextEntry] = null; |
this[_sentinel] = null; |
return false; |
} |
let elementEntry = _DoubleLinkedQueueElementOfE()._check(this[_nextEntry]); |
- if (elementEntry[_queue] == null) { |
+ if (!core.identical(this[_sentinel][_queue], elementEntry[_queue])) { |
dart.throw(new core.ConcurrentModificationError(this[_sentinel][_queue])); |
} |
- this[_current$2] = elementEntry.element; |
- this[_nextEntry] = elementEntry[_nextLink]; |
+ this[_current$1] = elementEntry[_element]; |
+ this[_nextEntry] = _DoubleLinkedQueueEntryOfE()._check(elementEntry[_nextLink]); |
return true; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
} |
dart.addTypeTests(_DoubleLinkedQueueIterator); |
@@ -26427,7 +26375,7 @@ collection._DoubleLinkedQueueIterator$ = dart.generic(E => { |
fields: () => ({ |
[_sentinel]: _DoubleLinkedQueueSentinelOfE(), |
[_nextEntry]: _DoubleLinkedQueueEntryOfE(), |
- [_current$2]: E |
+ [_current$1]: E |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -26450,7 +26398,7 @@ collection.ListQueue$ = dart.generic(E => { |
let QueueOfE = () => (QueueOfE = dart.constFn(collection.Queue$(E)))(); |
let ETovoid = () => (ETovoid = dart.constFn(dart.functionType(dart.void, [E])))(); |
let ETobool = () => (ETobool = dart.constFn(dart.functionType(core.bool, [E])))(); |
- class ListQueue extends core.Iterable$(E) { |
+ class ListQueue extends _internal.ListIterable$(E) { |
new(initialCapacity) { |
if (initialCapacity === void 0) initialCapacity = null; |
this[_head] = 0; |
@@ -26478,7 +26426,7 @@ collection.ListQueue$ = dart.generic(E => { |
return queue; |
} else { |
let capacity = collection.ListQueue._INITIAL_CAPACITY; |
- if (_internal.EfficientLength.is(elements)) { |
+ if (_internal.EfficientLengthIterable.is(elements)) { |
capacity = elements[dartx.length]; |
} |
let result = new (ListQueueOfE())(capacity); |
@@ -26727,7 +26675,6 @@ collection.ListQueue$ = dart.generic(E => { |
[_tail]: core.int, |
[_modificationCount]: core.int |
}), |
- getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}), |
methods: () => ({ |
add: dart.definiteFunctionType(dart.void, [E]), |
addAll: dart.definiteFunctionType(dart.void, [IterableOfE()]), |
@@ -26780,18 +26727,18 @@ collection._ListQueueIterator$ = dart.generic(E => { |
this[_end] = queue[_tail]; |
this[_modificationCount] = queue[_modificationCount]; |
this[_position] = queue[_head]; |
- this[_current$2] = null; |
+ this[_current$1] = null; |
} |
get current() { |
- return this[_current$2]; |
+ return this[_current$1]; |
} |
moveNext() { |
this[_queue][_checkModification](this[_modificationCount]); |
if (this[_position] == this[_end]) { |
- this[_current$2] = null; |
+ this[_current$1] = null; |
return false; |
} |
- this[_current$2] = this[_queue][_table][dartx._get](this[_position]); |
+ this[_current$1] = this[_queue][_table][dartx._get](this[_position]); |
this[_position] = (dart.notNull(this[_position]) + 1 & dart.notNull(this[_queue][_table][dartx.length]) - 1) >>> 0; |
return true; |
} |
@@ -26804,7 +26751,7 @@ collection._ListQueueIterator$ = dart.generic(E => { |
[_end]: core.int, |
[_modificationCount]: core.int, |
[_position]: core.int, |
- [_current$2]: E |
+ [_current$1]: E |
}), |
getters: () => ({current: dart.definiteFunctionType(E, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -26860,7 +26807,7 @@ const _splay = Symbol('_splay'); |
const _splayMin = Symbol('_splayMin'); |
const _splayMax = Symbol('_splayMax'); |
const _addNewRoot = Symbol('_addNewRoot'); |
-const _clear$ = Symbol('_clear'); |
+const _clear = Symbol('_clear'); |
collection._SplayTree$ = dart.generic((K, Node) => { |
class _SplayTree extends core.Object { |
new() { |
@@ -26985,7 +26932,7 @@ collection._SplayTree$ = dart.generic((K, Node) => { |
this[_root] = this[_splayMax](this[_root]); |
return this[_root]; |
} |
- [_clear$]() { |
+ [_clear]() { |
this[_root] = null; |
this[_count$] = 0; |
this[_modificationCount] = dart.notNull(this[_modificationCount]) + 1; |
@@ -27008,7 +26955,7 @@ collection._SplayTree$ = dart.generic((K, Node) => { |
[_splayMax]: dart.definiteFunctionType(Node, [Node]), |
[_remove]: dart.definiteFunctionType(Node, [K]), |
[_addNewRoot]: dart.definiteFunctionType(dart.void, [Node, core.int]), |
- [_clear$]: dart.definiteFunctionType(dart.void, []) |
+ [_clear]: dart.definiteFunctionType(dart.void, []) |
}) |
}); |
return _SplayTree; |
@@ -27165,7 +27112,7 @@ collection.SplayTreeMap$ = dart.generic((K, V) => { |
return this[_count$]; |
} |
clear() { |
- this[_clear$](); |
+ this[_clear](); |
} |
containsKey(key) { |
return dart.test(dart.dcall(this[_validKey], key)) && this[_splay](K.as(key)) == 0; |
@@ -27385,7 +27332,7 @@ collection._SplayTreeKeyIterable$ = dart.generic(K => { |
let SplayTreeSetOfK = () => (SplayTreeSetOfK = dart.constFn(collection.SplayTreeSet$(K)))(); |
let _SplayTreeNodeOfK = () => (_SplayTreeNodeOfK = dart.constFn(collection._SplayTreeNode$(K)))(); |
let _SplayTreeOfK$_SplayTreeNodeOfK = () => (_SplayTreeOfK$_SplayTreeNodeOfK = dart.constFn(collection._SplayTree$(K, _SplayTreeNodeOfK())))(); |
- class _SplayTreeKeyIterable extends core.Iterable$(K) { |
+ class _SplayTreeKeyIterable extends _internal.EfficientLengthIterable$(K) { |
new(tree) { |
this[_tree] = tree; |
super.new(); |
@@ -27406,7 +27353,6 @@ collection._SplayTreeKeyIterable$ = dart.generic(K => { |
return set; |
} |
} |
- _SplayTreeKeyIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(_SplayTreeKeyIterable, { |
fields: () => ({[_tree]: _SplayTreeOfK$_SplayTreeNodeOfK()}), |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(K), [])}) |
@@ -27418,7 +27364,7 @@ collection._SplayTreeKeyIterable = _SplayTreeKeyIterable(); |
collection._SplayTreeValueIterable$ = dart.generic((K, V) => { |
let _SplayTreeValueIteratorOfK$V = () => (_SplayTreeValueIteratorOfK$V = dart.constFn(collection._SplayTreeValueIterator$(K, V)))(); |
let SplayTreeMapOfK$V = () => (SplayTreeMapOfK$V = dart.constFn(collection.SplayTreeMap$(K, V)))(); |
- class _SplayTreeValueIterable extends core.Iterable$(V) { |
+ class _SplayTreeValueIterable extends _internal.EfficientLengthIterable$(V) { |
new(map) { |
this[_map$0] = map; |
super.new(); |
@@ -27433,7 +27379,6 @@ collection._SplayTreeValueIterable$ = dart.generic((K, V) => { |
return new (_SplayTreeValueIteratorOfK$V())(this[_map$0]); |
} |
} |
- _SplayTreeValueIterable[dart.implements] = () => [_internal.EfficientLength]; |
dart.setSignature(_SplayTreeValueIterable, { |
fields: () => ({[_map$0]: SplayTreeMapOfK$V()}), |
getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(V), [])}) |
@@ -27649,7 +27594,7 @@ collection.SplayTreeSet$ = dart.generic(E => { |
return _; |
} |
clear() { |
- this[_clear$](); |
+ this[_clear](); |
} |
toSet() { |
return this[_clone](); |
@@ -28186,7 +28131,7 @@ dart.setSignature(core.String, { |
core.List$ = dart.generic(E => { |
let JSArrayOfE = () => (JSArrayOfE = dart.constFn(_interceptors.JSArray$(E)))(); |
let ListOfE = () => (ListOfE = dart.constFn(core.List$(E)))(); |
- let IterableOfE = () => (IterableOfE = dart.constFn(core.Iterable$(E)))(); |
+ let EfficientLengthIterableOfE = () => (EfficientLengthIterableOfE = dart.constFn(_internal.EfficientLengthIterable$(E)))(); |
class List extends core.Object { |
static new(length) { |
if (length === void 0) length = null; |
@@ -28237,12 +28182,9 @@ core.List$ = dart.generic(E => { |
let result = ListOfE().from(elements, {growable: false}); |
return _internal.makeFixedListUnmodifiable(E)(result); |
} |
- [Symbol.iterator]() { |
- return new dart.JsIterator(this[dartx.iterator]); |
- } |
} |
dart.addTypeTests(List); |
- List[dart.implements] = () => [IterableOfE(), _internal.EfficientLength]; |
+ List[dart.implements] = () => [EfficientLengthIterableOfE()]; |
return List; |
}); |
core.List = List(); |
@@ -28381,6 +28323,7 @@ convert._UnicodeSubsetEncoder = class _UnicodeSubsetEncoder extends convert.Conv |
} |
}; |
dart.addSimpleTypeTests(convert._UnicodeSubsetEncoder); |
+convert._UnicodeSubsetEncoder[dart.implements] = () => [ChunkedConverterOfString$ListOfint$String$ListOfint()]; |
dart.setSignature(convert._UnicodeSubsetEncoder, { |
fields: () => ({[_subsetMask]: core.int}), |
methods: () => ({ |
@@ -28463,6 +28406,7 @@ convert._UnicodeSubsetDecoder = class _UnicodeSubsetDecoder extends convert.Conv |
} |
}; |
dart.addSimpleTypeTests(convert._UnicodeSubsetDecoder); |
+convert._UnicodeSubsetDecoder[dart.implements] = () => [ChunkedConverterOfListOfint$String$ListOfint$String()]; |
dart.setSignature(convert._UnicodeSubsetDecoder, { |
fields: () => ({ |
[_allowInvalid]: core.bool, |
@@ -28627,6 +28571,7 @@ convert.Base64Encoder = class Base64Encoder extends convert.Converter$(core.List |
}; |
dart.addSimpleTypeTests(convert.Base64Encoder); |
dart.defineNamedConstructor(convert.Base64Encoder, 'urlSafe'); |
+convert.Base64Encoder[dart.implements] = () => [ChunkedConverterOfListOfint$String$ListOfint$String()]; |
dart.setSignature(convert.Base64Encoder, { |
fields: () => ({[_urlSafe]: core.bool}), |
methods: () => ({ |
@@ -28653,6 +28598,104 @@ convert.Base64Codec = class Base64Codec extends convert.Codec$(core.List$(core.i |
get decoder() { |
return const$33 || (const$33 = dart.const(new convert.Base64Decoder())); |
} |
+ normalize(source, start, end) { |
+ if (start === void 0) start = 0; |
+ if (end === void 0) end = null; |
+ end = core.RangeError.checkValidRange(start, end, source[dartx.length]); |
+ let percent = 37; |
+ let equals = 61; |
+ let buffer = null; |
+ let sliceStart = start; |
+ let alphabet = convert._Base64Encoder._base64Alphabet; |
+ let inverseAlphabet = convert._Base64Decoder._inverseAlphabet; |
+ let firstPadding = -1; |
+ let firstPaddingSourceIndex = -1; |
+ let paddingCount = 0; |
+ for (let i = start; dart.notNull(i) < dart.notNull(end);) { |
+ let sliceEnd = i; |
+ let char = source[dartx.codeUnitAt]((() => { |
+ let x = i; |
+ i = dart.notNull(x) + 1; |
+ return x; |
+ })()); |
+ let originalChar = char; |
+ if (char == percent) { |
+ if (dart.notNull(i) + 2 <= dart.notNull(end)) { |
+ char = _internal.parseHexByte(source, i); |
+ i = dart.notNull(i) + 2; |
+ if (char == percent) char = -1; |
+ } else { |
+ char = -1; |
+ } |
+ } |
+ if (0 <= dart.notNull(char) && dart.notNull(char) <= 127) { |
+ let value = inverseAlphabet[dartx._get](char); |
+ if (dart.notNull(value) >= 0) { |
+ char = alphabet[dartx.codeUnitAt](value); |
+ if (char == originalChar) continue; |
+ } else if (value == convert._Base64Decoder._padding) { |
+ if (dart.notNull(firstPadding) < 0) { |
+ firstPadding = (() => { |
+ let l = dart.nullSafe(buffer, _ => _.length); |
+ return l != null ? l : 0; |
+ })() + (dart.notNull(sliceEnd) - dart.notNull(sliceStart)); |
+ firstPaddingSourceIndex = sliceEnd; |
+ } |
+ paddingCount = dart.notNull(paddingCount) + 1; |
+ if (originalChar == equals) continue; |
+ } |
+ if (value != convert._Base64Decoder._invalid) { |
+ let t = buffer; |
+ t == null ? buffer = new core.StringBuffer() : t; |
+ buffer.write(source[dartx.substring](sliceStart, sliceEnd)); |
+ buffer.writeCharCode(char); |
+ sliceStart = i; |
+ continue; |
+ } |
+ } |
+ dart.throw(new core.FormatException("Invalid base64 data", source, sliceEnd)); |
+ } |
+ if (buffer != null) { |
+ buffer.write(source[dartx.substring](sliceStart, end)); |
+ if (dart.notNull(firstPadding) >= 0) { |
+ convert.Base64Codec._checkPadding(source, firstPaddingSourceIndex, end, firstPadding, paddingCount, buffer.length); |
+ } else { |
+ let endLength = (dart.notNull(buffer.length) - 1)[dartx['%']](4) + 1; |
+ if (endLength == 1) { |
+ dart.throw(new core.FormatException("Invalid base64 encoding length ", source, end)); |
+ } |
+ while (dart.notNull(endLength) < 4) { |
+ buffer.write("="); |
+ endLength = dart.notNull(endLength) + 1; |
+ } |
+ } |
+ return source[dartx.replaceRange](start, end, dart.toString(buffer)); |
+ } |
+ let length = dart.notNull(end) - dart.notNull(start); |
+ if (dart.notNull(firstPadding) >= 0) { |
+ convert.Base64Codec._checkPadding(source, firstPaddingSourceIndex, end, firstPadding, paddingCount, length); |
+ } else { |
+ let endLength = length[dartx['%']](4); |
+ if (endLength == 1) { |
+ dart.throw(new core.FormatException("Invalid base64 encoding length ", source, end)); |
+ } |
+ if (dart.notNull(endLength) > 1) { |
+ source = source[dartx.replaceRange](end, end, endLength == 2 ? "==" : "="); |
+ } |
+ } |
+ return source; |
+ } |
+ static _checkPadding(source, sourceIndex, sourceEnd, firstPadding, paddingCount, length) { |
+ if (length[dartx['%']](4) != 0) { |
+ dart.throw(new core.FormatException("Invalid base64 padding, padded length must be multiple of four, " + dart.str`is ${length}`, source, sourceEnd)); |
+ } |
+ if (dart.notNull(firstPadding) + dart.notNull(paddingCount) != length) { |
+ dart.throw(new core.FormatException("Invalid base64 padding, '=' not at the end", source, sourceIndex)); |
+ } |
+ if (dart.notNull(paddingCount) > 2) { |
+ dart.throw(new core.FormatException("Invalid base64 padding, more than two '=' characters", source, sourceIndex)); |
+ } |
+ } |
}; |
dart.addSimpleTypeTests(convert.Base64Codec); |
dart.defineNamedConstructor(convert.Base64Codec, 'urlSafe'); |
@@ -28661,7 +28704,10 @@ dart.setSignature(convert.Base64Codec, { |
getters: () => ({ |
encoder: dart.definiteFunctionType(convert.Base64Encoder, []), |
decoder: dart.definiteFunctionType(convert.Base64Decoder, []) |
- }) |
+ }), |
+ methods: () => ({normalize: dart.definiteFunctionType(core.String, [core.String], [core.int, core.int])}), |
+ statics: () => ({_checkPadding: dart.definiteFunctionType(core.int, [core.String, core.int, core.int, core.int, core.int, core.int])}), |
+ names: ['_checkPadding'] |
}); |
convert.BASE64 = dart.const(new convert.Base64Codec()); |
convert.BASE64URL = dart.const(new convert.Base64Codec.urlSafe()); |
@@ -28925,6 +28971,7 @@ convert.Base64Decoder = class Base64Decoder extends convert.Converter$(core.Stri |
} |
}; |
dart.addSimpleTypeTests(convert.Base64Decoder); |
+convert.Base64Decoder[dart.implements] = () => [ChunkedConverterOfString$ListOfint$String$ListOfint()]; |
dart.setSignature(convert.Base64Decoder, { |
methods: () => ({ |
convert: dart.definiteFunctionType(core.List$(core.int), [core.String], [core.int, core.int]), |
@@ -29453,6 +29500,7 @@ convert._InvertedCodec$ = dart.generic((T, S) => { |
}); |
convert._InvertedCodec = _InvertedCodec(); |
convert._FusedConverter$ = dart.generic((S, M, T) => { |
+ let ChunkedConverterOfS$T$S$T = () => (ChunkedConverterOfS$T$S$T = dart.constFn(convert.ChunkedConverter$(S, T, S, T)))(); |
let ConverterOfS$M = () => (ConverterOfS$M = dart.constFn(convert.Converter$(S, M)))(); |
let ConverterOfM$T = () => (ConverterOfM$T = dart.constFn(convert.Converter$(M, T)))(); |
let SinkOfT = () => (SinkOfT = dart.constFn(core.Sink$(T)))(); |
@@ -29471,6 +29519,7 @@ convert._FusedConverter$ = dart.generic((S, M, T) => { |
return this[_first$0].startChunkedConversion(this[_second].startChunkedConversion(sink)); |
} |
} |
+ _FusedConverter[dart.implements] = () => [ChunkedConverterOfS$T$S$T()]; |
dart.setSignature(_FusedConverter, { |
fields: () => ({ |
[_first$0]: ConverterOfS$M(), |
@@ -29605,6 +29654,7 @@ convert.HtmlEscape = class HtmlEscape extends convert.Converter$(core.String, co |
} |
}; |
dart.addSimpleTypeTests(convert.HtmlEscape); |
+convert.HtmlEscape[dart.implements] = () => [ChunkedConverterOfString$String$String$String()]; |
dart.setSignature(convert.HtmlEscape, { |
fields: () => ({mode: convert.HtmlEscapeMode}), |
methods: () => ({ |
@@ -29764,6 +29814,7 @@ convert.JsonEncoder = class JsonEncoder extends convert.Converter$(core.Object, |
}; |
dart.addSimpleTypeTests(convert.JsonEncoder); |
dart.defineNamedConstructor(convert.JsonEncoder, 'withIndent'); |
+convert.JsonEncoder[dart.implements] = () => [ChunkedConverterOfObject$String$Object$String()]; |
dart.setSignature(convert.JsonEncoder, { |
fields: () => ({ |
indent: core.String, |
@@ -29836,6 +29887,7 @@ convert.JsonUtf8Encoder = class JsonUtf8Encoder extends convert.Converter$(core. |
} |
}; |
dart.addSimpleTypeTests(convert.JsonUtf8Encoder); |
+convert.JsonUtf8Encoder[dart.implements] = () => [ChunkedConverterOfObject$ListOfint$Object$ListOfint()]; |
dart.setSignature(convert.JsonUtf8Encoder, { |
fields: () => ({ |
[_indent]: ListOfint(), |
@@ -29943,6 +29995,7 @@ convert.JsonDecoder = class JsonDecoder extends convert.Converter$(core.String, |
} |
}; |
dart.addSimpleTypeTests(convert.JsonDecoder); |
+convert.JsonDecoder[dart.implements] = () => [ChunkedConverterOfString$Object$String$Object()]; |
dart.setSignature(convert.JsonDecoder, { |
fields: () => ({[_reviver]: convert._Reviver}), |
methods: () => ({ |
@@ -31071,6 +31124,7 @@ convert.Utf8Encoder = class Utf8Encoder extends convert.Converter$(core.String, |
} |
}; |
dart.addSimpleTypeTests(convert.Utf8Encoder); |
+convert.Utf8Encoder[dart.implements] = () => [ChunkedConverterOfString$ListOfint$String$ListOfint()]; |
dart.setSignature(convert.Utf8Encoder, { |
methods: () => ({ |
convert: dart.definiteFunctionType(core.List$(core.int), [core.String], [core.int, core.int]), |
@@ -31283,7 +31337,7 @@ convert.Utf8Decoder = class Utf8Decoder extends convert.Converter$(core.List$(co |
let buffer = new core.StringBuffer(); |
let decoder = new convert._Utf8Decoder(buffer, this[_allowMalformed]); |
decoder.convert(codeUnits, start, end); |
- decoder.close(); |
+ decoder.flush(codeUnits, end); |
return buffer.toString(); |
} |
startChunkedConversion(sink) { |
@@ -31308,6 +31362,7 @@ convert.Utf8Decoder = class Utf8Decoder extends convert.Converter$(core.List$(co |
} |
}; |
dart.addSimpleTypeTests(convert.Utf8Decoder); |
+convert.Utf8Decoder[dart.implements] = () => [ChunkedConverterOfListOfint$String$ListOfint$String()]; |
dart.setSignature(convert.Utf8Decoder, { |
fields: () => ({[_allowMalformed]: core.bool}), |
methods: () => ({ |
@@ -31357,10 +31412,12 @@ convert._Utf8Decoder = class _Utf8Decoder extends core.Object { |
close() { |
this.flush(); |
} |
- flush() { |
+ flush(source, offset) { |
+ if (source === void 0) source = null; |
+ if (offset === void 0) offset = null; |
if (dart.test(this.hasPartialInput)) { |
if (!dart.test(this[_allowMalformed])) { |
- dart.throw(new core.FormatException("Unfinished UTF-8 octet sequence")); |
+ dart.throw(new core.FormatException("Unfinished UTF-8 octet sequence", source, offset)); |
} |
this[_stringSink].writeCharCode(convert.UNICODE_REPLACEMENT_CHARACTER_RUNE); |
this[_value] = 0; |
@@ -31404,7 +31461,7 @@ convert._Utf8Decoder = class _Utf8Decoder extends core.Object { |
if ((dart.notNull(unit) & 192) != 128) { |
expectedUnits = 0; |
if (!dart.test(this[_allowMalformed])) { |
- dart.throw(new core.FormatException(dart.str`Bad UTF-8 encoding 0x${unit[dartx.toRadixString](16)}`)); |
+ dart.throw(new core.FormatException(dart.str`Bad UTF-8 encoding 0x${unit[dartx.toRadixString](16)}`, codeUnits, i)); |
} |
this[_isFirstCharacter] = false; |
this[_stringSink].writeCharCode(convert.UNICODE_REPLACEMENT_CHARACTER_RUNE); |
@@ -31417,14 +31474,14 @@ convert._Utf8Decoder = class _Utf8Decoder extends core.Object { |
} while (dart.notNull(expectedUnits) > 0); |
if (dart.notNull(value) <= dart.notNull(convert._Utf8Decoder._LIMITS[dartx._get](dart.notNull(extraUnits) - 1))) { |
if (!dart.test(this[_allowMalformed])) { |
- dart.throw(new core.FormatException(dart.str`Overlong encoding of 0x${value[dartx.toRadixString](16)}`)); |
+ dart.throw(new core.FormatException(dart.str`Overlong encoding of 0x${value[dartx.toRadixString](16)}`, codeUnits, dart.notNull(i) - dart.notNull(extraUnits) - 1)); |
} |
expectedUnits = extraUnits = 0; |
value = convert.UNICODE_REPLACEMENT_CHARACTER_RUNE; |
} |
if (dart.notNull(value) > convert._FOUR_BYTE_LIMIT) { |
if (!dart.test(this[_allowMalformed])) { |
- dart.throw(new core.FormatException("Character outside valid Unicode range: " + dart.str`0x${value[dartx.toRadixString](16)}`)); |
+ dart.throw(new core.FormatException("Character outside valid Unicode range: " + dart.str`0x${value[dartx.toRadixString](16)}`, codeUnits, dart.notNull(i) - dart.notNull(extraUnits) - 1)); |
} |
value = convert.UNICODE_REPLACEMENT_CHARACTER_RUNE; |
} |
@@ -31448,7 +31505,7 @@ convert._Utf8Decoder = class _Utf8Decoder extends core.Object { |
})()); |
if (dart.notNull(unit) < 0) { |
if (!dart.test(this[_allowMalformed])) { |
- dart.throw(new core.FormatException(dart.str`Negative UTF-8 code unit: -0x${(-dart.notNull(unit))[dartx.toRadixString](16)}`)); |
+ dart.throw(new core.FormatException(dart.str`Negative UTF-8 code unit: -0x${(-dart.notNull(unit))[dartx.toRadixString](16)}`, codeUnits, dart.notNull(i) - 1)); |
} |
this[_stringSink].writeCharCode(convert.UNICODE_REPLACEMENT_CHARACTER_RUNE); |
} else { |
@@ -31469,7 +31526,7 @@ convert._Utf8Decoder = class _Utf8Decoder extends core.Object { |
continue loop; |
} |
if (!dart.test(this[_allowMalformed])) { |
- dart.throw(new core.FormatException(dart.str`Bad UTF-8 encoding 0x${unit[dartx.toRadixString](16)}`)); |
+ dart.throw(new core.FormatException(dart.str`Bad UTF-8 encoding 0x${unit[dartx.toRadixString](16)}`, codeUnits, dart.notNull(i) - 1)); |
} |
value = convert.UNICODE_REPLACEMENT_CHARACTER_RUNE; |
expectedUnits = extraUnits = 0; |
@@ -31498,7 +31555,7 @@ dart.setSignature(convert._Utf8Decoder, { |
getters: () => ({hasPartialInput: dart.definiteFunctionType(core.bool, [])}), |
methods: () => ({ |
close: dart.definiteFunctionType(dart.void, []), |
- flush: dart.definiteFunctionType(dart.void, []), |
+ flush: dart.definiteFunctionType(dart.void, [], [ListOfint(), core.int]), |
convert: dart.definiteFunctionType(dart.void, [ListOfint(), core.int, core.int]) |
}) |
}); |
@@ -31535,6 +31592,7 @@ core._Proxy = class _Proxy extends core.Object { |
}; |
core.proxy = dart.const(new core._Proxy()); |
dart.defineExtensionNames([ |
+ 'hashCode', |
'toString' |
]); |
core.bool = class bool extends core.Object { |
@@ -31542,6 +31600,9 @@ core.bool = class bool extends core.Object { |
let defaultValue = opts && 'defaultValue' in opts ? opts.defaultValue : false; |
dart.throw(new core.UnsupportedError('bool.fromEnvironment can only be used as a const constructor')); |
} |
+ get [dartx.hashCode]() { |
+ return super.hashCode; |
+ } |
[dartx.toString]() { |
return this ? "true" : "false"; |
} |
@@ -32678,108 +32739,42 @@ core._Generator$ = dart.generic(E => { |
return _Generator; |
}); |
core._Generator = _Generator(); |
-const _end$ = Symbol('_end'); |
-const _start$0 = Symbol('_start'); |
const _generator$ = Symbol('_generator'); |
core._GeneratorIterable$ = dart.generic(E => { |
let _GeneratorOfE = () => (_GeneratorOfE = dart.constFn(core._Generator$(E)))(); |
- let _GeneratorIteratorOfE = () => (_GeneratorIteratorOfE = dart.constFn(core._GeneratorIterator$(E)))(); |
- let EmptyIterableOfE = () => (EmptyIterableOfE = dart.constFn(_internal.EmptyIterable$(E)))(); |
- let _GeneratorIterableOfE = () => (_GeneratorIterableOfE = dart.constFn(core._GeneratorIterable$(E)))(); |
- class _GeneratorIterable extends core.Iterable$(E) { |
- new(end, generator) { |
- this[_end$] = end; |
- this[_start$0] = 0; |
- this[_generator$] = generator != null ? generator : _GeneratorOfE().as(core._GeneratorIterable._id); |
- super.new(); |
- } |
- slice(start, end, generator) { |
- this[_start$0] = start; |
- this[_end$] = end; |
- this[_generator$] = generator; |
- super.new(); |
- } |
- get iterator() { |
- return new (_GeneratorIteratorOfE())(this[_start$0], this[_end$], this[_generator$]); |
- } |
+ class _GeneratorIterable extends _internal.ListIterable$(E) { |
get length() { |
- return dart.notNull(this[_end$]) - dart.notNull(this[_start$0]); |
+ return this[length$]; |
} |
- skip(count) { |
- core.RangeError.checkNotNegative(count, "count"); |
- if (count == 0) return this; |
- let newStart = dart.notNull(this[_start$0]) + dart.notNull(count); |
- if (newStart >= dart.notNull(this[_end$])) return new (EmptyIterableOfE())(); |
- return new (_GeneratorIterableOfE()).slice(newStart, this[_end$], this[_generator$]); |
+ set length(value) { |
+ super.length = value; |
} |
- take(count) { |
- core.RangeError.checkNotNegative(count, "count"); |
- if (count == 0) return new (EmptyIterableOfE())(); |
- let newEnd = dart.notNull(this[_start$0]) + dart.notNull(count); |
- if (newEnd >= dart.notNull(this[_end$])) return this; |
- return new (_GeneratorIterableOfE()).slice(this[_start$0], newEnd, this[_generator$]); |
+ new(length, generator) { |
+ this[length$] = length; |
+ this[_generator$] = generator != null ? generator : _GeneratorOfE().as(core._GeneratorIterable._id); |
+ super.new(); |
+ } |
+ elementAt(index) { |
+ core.RangeError.checkValidIndex(index, this); |
+ return this[_generator$](index); |
} |
static _id(n) { |
return n; |
} |
} |
- dart.defineNamedConstructor(_GeneratorIterable, 'slice'); |
- _GeneratorIterable[dart.implements] = () => [_internal.EfficientLength]; |
+ const length$ = Symbol("_GeneratorIterable.length"); |
dart.setSignature(_GeneratorIterable, { |
fields: () => ({ |
- [_start$0]: core.int, |
- [_end$]: core.int, |
+ length: core.int, |
[_generator$]: _GeneratorOfE() |
}), |
- getters: () => ({iterator: dart.definiteFunctionType(core.Iterator$(E), [])}), |
statics: () => ({_id: dart.definiteFunctionType(core.int, [core.int])}), |
names: ['_id'] |
}); |
- dart.defineExtensionMembers(_GeneratorIterable, ['skip', 'take', 'iterator', 'length']); |
+ dart.defineExtensionMembers(_GeneratorIterable, ['elementAt', 'length']); |
return _GeneratorIterable; |
}); |
core._GeneratorIterable = _GeneratorIterable(); |
-const _index$1 = Symbol('_index'); |
-const _current$3 = Symbol('_current'); |
-core._GeneratorIterator$ = dart.generic(E => { |
- let IteratorOfE = () => (IteratorOfE = dart.constFn(core.Iterator$(E)))(); |
- let _GeneratorOfE = () => (_GeneratorOfE = dart.constFn(core._Generator$(E)))(); |
- class _GeneratorIterator extends core.Object { |
- new(index, end, generator) { |
- this[_index$1] = index; |
- this[_end$] = end; |
- this[_generator$] = generator; |
- this[_current$3] = null; |
- } |
- moveNext() { |
- if (dart.notNull(this[_index$1]) < dart.notNull(this[_end$])) { |
- this[_current$3] = this[_generator$](this[_index$1]); |
- this[_index$1] = dart.notNull(this[_index$1]) + 1; |
- return true; |
- } else { |
- this[_current$3] = null; |
- return false; |
- } |
- } |
- get current() { |
- return this[_current$3]; |
- } |
- } |
- dart.addTypeTests(_GeneratorIterator); |
- _GeneratorIterator[dart.implements] = () => [IteratorOfE()]; |
- dart.setSignature(_GeneratorIterator, { |
- fields: () => ({ |
- [_end$]: core.int, |
- [_generator$]: _GeneratorOfE(), |
- [_index$1]: core.int, |
- [_current$3]: E |
- }), |
- getters: () => ({current: dart.definiteFunctionType(E, [])}), |
- methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
- }); |
- return _GeneratorIterator; |
-}); |
-core._GeneratorIterator = _GeneratorIterator(); |
core.BidirectionalIterator$ = dart.generic(E => { |
let IteratorOfE = () => (IteratorOfE = dart.constFn(core.Iterator$(E)))(); |
class BidirectionalIterator extends core.Object {} |
@@ -32821,6 +32816,9 @@ core.Null = class Null extends core.Object { |
static _uninstantiable() { |
dart.throw(new core.UnsupportedError('class Null cannot be instantiated')); |
} |
+ get hashCode() { |
+ return super.hashCode; |
+ } |
toString() { |
return "null"; |
} |
@@ -32856,7 +32854,7 @@ core.RegExp = class RegExp extends core.Object { |
core.RegExp[dart.implements] = () => [core.Pattern]; |
core.Set$ = dart.generic(E => { |
let LinkedHashSetOfE = () => (LinkedHashSetOfE = dart.constFn(collection.LinkedHashSet$(E)))(); |
- class Set extends core.Iterable$(E) { |
+ class Set extends _internal.EfficientLengthIterable$(E) { |
static new() { |
return LinkedHashSetOfE().new(); |
} |
@@ -32867,7 +32865,6 @@ core.Set$ = dart.generic(E => { |
return LinkedHashSetOfE().from(elements); |
} |
} |
- Set[dart.implements] = () => [_internal.EfficientLength]; |
return Set; |
}); |
core.Set = Set(); |
@@ -32900,41 +32897,38 @@ core._StringStackTrace[dart.implements] = () => [core.StackTrace]; |
dart.setSignature(core._StringStackTrace, { |
fields: () => ({[_stackTrace]: core.String}) |
}); |
+const _start$0 = Symbol('_start'); |
const _stop = Symbol('_stop'); |
core.Stopwatch = class Stopwatch extends core.Object { |
+ new() { |
+ this[_start$0] = 0; |
+ this[_stop] = 0; |
+ if (core.Stopwatch._frequency == null) core.Stopwatch._initTicker(); |
+ } |
get frequency() { |
return core.Stopwatch._frequency; |
} |
- new() { |
- this[_start$0] = null; |
- this[_stop] = null; |
- core.Stopwatch._initTicker(); |
- } |
start() { |
- if (dart.test(this.isRunning)) return; |
- if (this[_start$0] == null) { |
- this[_start$0] = core.Stopwatch._now(); |
- } else { |
- this[_start$0] = dart.notNull(core.Stopwatch._now()) - (dart.notNull(this[_stop]) - dart.notNull(this[_start$0])); |
+ if (this[_stop] != null) { |
+ this[_start$0] = dart.notNull(this[_start$0]) + (dart.notNull(core.Stopwatch._now()) - dart.notNull(this[_stop])); |
this[_stop] = null; |
} |
} |
stop() { |
- if (!dart.test(this.isRunning)) return; |
- this[_stop] = core.Stopwatch._now(); |
+ let t = this[_stop]; |
+ t == null ? this[_stop] = core.Stopwatch._now() : t; |
} |
reset() { |
- if (this[_start$0] == null) return; |
- this[_start$0] = core.Stopwatch._now(); |
- if (this[_stop] != null) { |
- this[_stop] = this[_start$0]; |
- } |
+ this[_start$0] = (() => { |
+ let l = this[_stop]; |
+ return l != null ? l : core.Stopwatch._now(); |
+ })(); |
} |
get elapsedTicks() { |
- if (this[_start$0] == null) { |
- return 0; |
- } |
- return this[_stop] == null ? dart.notNull(core.Stopwatch._now()) - dart.notNull(this[_start$0]) : dart.notNull(this[_stop]) - dart.notNull(this[_start$0]); |
+ return dart.notNull((() => { |
+ let l = this[_stop]; |
+ return l != null ? l : core.Stopwatch._now(); |
+ })()) - dart.notNull(this[_start$0]); |
} |
get elapsed() { |
return new core.Duration({microseconds: this.elapsedMicroseconds}); |
@@ -32946,7 +32940,7 @@ core.Stopwatch = class Stopwatch extends core.Object { |
return (dart.notNull(this.elapsedTicks) * 1000 / dart.notNull(this.frequency))[dartx.truncate](); |
} |
get isRunning() { |
- return this[_start$0] != null && this[_stop] == null; |
+ return this[_stop] == null; |
} |
static _initTicker() { |
_js_helper.Primitives.initTicker(); |
@@ -33222,37 +33216,471 @@ core.Symbol = class Symbol extends core.Object { |
return new _internal.Symbol(name); |
} |
}; |
+core._SPACE = 32; |
+core._PERCENT = 37; |
+core._AMPERSAND = 38; |
+core._PLUS = 43; |
+core._DOT = 46; |
+core._SLASH = 47; |
+core._COLON = 58; |
+core._EQUALS = 61; |
+core._UPPER_CASE_A = 65; |
+core._UPPER_CASE_Z = 90; |
+core._LEFT_BRACKET = 91; |
+core._BACKSLASH = 92; |
+core._RIGHT_BRACKET = 93; |
+core._LOWER_CASE_A = 97; |
+core._LOWER_CASE_F = 102; |
+core._LOWER_CASE_Z = 122; |
+core._hexDigits = "0123456789ABCDEF"; |
+core.Uri = class Uri extends core.Object { |
+ static get base() { |
+ let uri = _js_helper.Primitives.currentUri(); |
+ if (uri != null) return core.Uri.parse(uri); |
+ dart.throw(new core.UnsupportedError("'Uri.base' is not supported")); |
+ } |
+ static new(opts) { |
+ return core._Uri.new(opts); |
+ } |
+ static http(authority, unencodedPath, queryParameters) { |
+ return core._Uri.http(authority, unencodedPath, queryParameters); |
+ } |
+ static https(authority, unencodedPath, queryParameters) { |
+ return core._Uri.https(authority, unencodedPath, queryParameters); |
+ } |
+ static file(path, opts) { |
+ return core._Uri.file(path, opts); |
+ } |
+ static directory(path, opts) { |
+ return core._Uri.directory(path, opts); |
+ } |
+ static dataFromString(content, opts) { |
+ let mimeType = opts && 'mimeType' in opts ? opts.mimeType : null; |
+ let encoding = opts && 'encoding' in opts ? opts.encoding : null; |
+ let parameters = opts && 'parameters' in opts ? opts.parameters : null; |
+ let base64 = opts && 'base64' in opts ? opts.base64 : false; |
+ let data = core.UriData.fromString(content, {mimeType: mimeType, encoding: encoding, parameters: parameters, base64: base64}); |
+ return data.uri; |
+ } |
+ static dataFromBytes(bytes, opts) { |
+ let mimeType = opts && 'mimeType' in opts ? opts.mimeType : "application/octet-stream"; |
+ let parameters = opts && 'parameters' in opts ? opts.parameters : null; |
+ let percentEncoded = opts && 'percentEncoded' in opts ? opts.percentEncoded : false; |
+ let data = core.UriData.fromBytes(bytes, {mimeType: mimeType, parameters: parameters, percentEncoded: percentEncoded}); |
+ return data.uri; |
+ } |
+ get hasScheme() { |
+ return this.scheme[dartx.isNotEmpty]; |
+ } |
+ static parse(uri, start, end) { |
+ if (start === void 0) start = 0; |
+ if (end === void 0) end = null; |
+ let t = end; |
+ t == null ? end = uri[dartx.length] : t; |
+ if (dart.notNull(end) >= dart.notNull(start) + 5) { |
+ let dataDelta = core._startsWithData(uri, start); |
+ if (dataDelta == 0) { |
+ if (dart.notNull(start) > 0 || dart.notNull(end) < dart.notNull(uri[dartx.length])) uri = uri[dartx.substring](start, end); |
+ return core.UriData._parse(uri, 5, null).uri; |
+ } else if (dataDelta == 32) { |
+ return core.UriData._parse(uri[dartx.substring](dart.notNull(start) + 5, end), 0, null).uri; |
+ } |
+ } |
+ let indices = ListOfint().new(8); |
+ indices[dartx._set](0, 0); |
+ indices[dartx._set](core._schemeEndIndex, dart.notNull(start) - 1); |
+ indices[dartx._set](core._hostStartIndex, dart.notNull(start) - 1); |
+ indices[dartx._set](core._notSimpleIndex, dart.notNull(start) - 1); |
+ indices[dartx._set](core._portStartIndex, start); |
+ indices[dartx._set](core._pathStartIndex, start); |
+ indices[dartx._set](core._queryStartIndex, end); |
+ indices[dartx._set](core._fragmentStartIndex, end); |
+ let state = core._scan(uri, start, end, core._uriStart, indices); |
+ if (dart.notNull(state) >= core._nonSimpleEndStates) { |
+ indices[dartx._set](core._notSimpleIndex, end); |
+ } |
+ let schemeEnd = indices[dartx._get](core._schemeEndIndex); |
+ if (dart.notNull(schemeEnd) >= dart.notNull(start)) { |
+ state = core._scan(uri, start, schemeEnd, core._schemeStart, indices); |
+ if (state == core._schemeStart) { |
+ indices[dartx._set](core._notSimpleIndex, schemeEnd); |
+ } |
+ } |
+ let hostStart = dart.notNull(indices[dartx._get](core._hostStartIndex)) + 1; |
+ let portStart = indices[dartx._get](core._portStartIndex); |
+ let pathStart = indices[dartx._get](core._pathStartIndex); |
+ let queryStart = indices[dartx._get](core._queryStartIndex); |
+ let fragmentStart = indices[dartx._get](core._fragmentStartIndex); |
+ let scheme = null; |
+ if (dart.notNull(fragmentStart) < dart.notNull(queryStart)) queryStart = fragmentStart; |
+ if (dart.notNull(pathStart) < dart.notNull(hostStart) || dart.notNull(pathStart) <= dart.notNull(schemeEnd)) { |
+ pathStart = queryStart; |
+ } |
+ if (dart.notNull(portStart) < dart.notNull(hostStart)) portStart = pathStart; |
+ dart.assert(hostStart == start || dart.notNull(schemeEnd) <= dart.notNull(hostStart)); |
+ dart.assert(dart.notNull(hostStart) <= dart.notNull(portStart)); |
+ dart.assert(dart.notNull(schemeEnd) <= dart.notNull(pathStart)); |
+ dart.assert(dart.notNull(portStart) <= dart.notNull(pathStart)); |
+ dart.assert(dart.notNull(pathStart) <= dart.notNull(queryStart)); |
+ dart.assert(dart.notNull(queryStart) <= dart.notNull(fragmentStart)); |
+ let isSimple = dart.notNull(indices[dartx._get](core._notSimpleIndex)) < dart.notNull(start); |
+ if (isSimple) { |
+ if (dart.notNull(hostStart) > dart.notNull(schemeEnd) + 3) { |
+ isSimple = false; |
+ } else if (dart.notNull(portStart) > dart.notNull(start) && dart.notNull(portStart) + 1 == pathStart) { |
+ isSimple = false; |
+ } else if (dart.notNull(queryStart) < dart.notNull(end) && queryStart == dart.notNull(pathStart) + 2 && dart.test(uri[dartx.startsWith]("..", pathStart)) || dart.notNull(queryStart) > dart.notNull(pathStart) + 2 && dart.test(uri[dartx.startsWith]("/..", dart.notNull(queryStart) - 3))) { |
+ isSimple = false; |
+ } else { |
+ if (schemeEnd == dart.notNull(start) + 4) { |
+ if (dart.test(uri[dartx.startsWith]("file", start))) { |
+ scheme = "file"; |
+ if (dart.notNull(hostStart) <= dart.notNull(start)) { |
+ let schemeAuth = "file://"; |
+ let delta = 2; |
+ if (!dart.test(uri[dartx.startsWith]("/", pathStart))) { |
+ schemeAuth = "file:///"; |
+ delta = 3; |
+ } |
+ uri = schemeAuth + dart.notNull(uri[dartx.substring](pathStart, end)); |
+ schemeEnd = dart.notNull(schemeEnd) - dart.notNull(start); |
+ hostStart = 7; |
+ portStart = 7; |
+ pathStart = 7; |
+ queryStart = dart.notNull(queryStart) + (delta - dart.notNull(start)); |
+ fragmentStart = dart.notNull(fragmentStart) + (delta - dart.notNull(start)); |
+ start = 0; |
+ end = uri[dartx.length]; |
+ } else if (pathStart == queryStart) { |
+ if (start == 0 && end == uri[dartx.length]) { |
+ uri = uri[dartx.replaceRange](pathStart, queryStart, "/"); |
+ queryStart = dart.notNull(queryStart) + 1; |
+ fragmentStart = dart.notNull(fragmentStart) + 1; |
+ end = dart.notNull(end) + 1; |
+ } else { |
+ uri = dart.str`${uri[dartx.substring](start, pathStart)}/` + dart.str`${uri[dartx.substring](queryStart, end)}`; |
+ schemeEnd = dart.notNull(schemeEnd) - dart.notNull(start); |
+ hostStart = dart.notNull(hostStart) - dart.notNull(start); |
+ portStart = dart.notNull(portStart) - dart.notNull(start); |
+ pathStart = dart.notNull(pathStart) - dart.notNull(start); |
+ queryStart = dart.notNull(queryStart) + (1 - dart.notNull(start)); |
+ fragmentStart = dart.notNull(fragmentStart) + (1 - dart.notNull(start)); |
+ start = 0; |
+ end = uri[dartx.length]; |
+ } |
+ } |
+ } else if (dart.test(uri[dartx.startsWith]("http", start))) { |
+ scheme = "http"; |
+ if (dart.notNull(portStart) > dart.notNull(start) && dart.notNull(portStart) + 3 == pathStart && dart.test(uri[dartx.startsWith]("80", dart.notNull(portStart) + 1))) { |
+ if (start == 0 && end == uri[dartx.length]) { |
+ uri = uri[dartx.replaceRange](portStart, pathStart, ""); |
+ pathStart = dart.notNull(pathStart) - 3; |
+ queryStart = dart.notNull(queryStart) - 3; |
+ fragmentStart = dart.notNull(fragmentStart) - 3; |
+ end = dart.notNull(end) - 3; |
+ } else { |
+ uri = dart.notNull(uri[dartx.substring](start, portStart)) + dart.notNull(uri[dartx.substring](pathStart, end)); |
+ schemeEnd = dart.notNull(schemeEnd) - dart.notNull(start); |
+ hostStart = dart.notNull(hostStart) - dart.notNull(start); |
+ portStart = dart.notNull(portStart) - dart.notNull(start); |
+ pathStart = dart.notNull(pathStart) - (3 + dart.notNull(start)); |
+ queryStart = dart.notNull(queryStart) - (3 + dart.notNull(start)); |
+ fragmentStart = dart.notNull(fragmentStart) - (3 + dart.notNull(start)); |
+ start = 0; |
+ end = uri[dartx.length]; |
+ } |
+ } |
+ } |
+ } else if (schemeEnd == dart.notNull(start) + 5 && dart.test(uri[dartx.startsWith]("https", start))) { |
+ scheme = "https"; |
+ if (dart.notNull(portStart) > dart.notNull(start) && dart.notNull(portStart) + 4 == pathStart && dart.test(uri[dartx.startsWith]("443", dart.notNull(portStart) + 1))) { |
+ if (start == 0 && end == uri[dartx.length]) { |
+ uri = uri[dartx.replaceRange](portStart, pathStart, ""); |
+ pathStart = dart.notNull(pathStart) - 4; |
+ queryStart = dart.notNull(queryStart) - 4; |
+ fragmentStart = dart.notNull(fragmentStart) - 4; |
+ end = dart.notNull(end) - 3; |
+ } else { |
+ uri = dart.notNull(uri[dartx.substring](start, portStart)) + dart.notNull(uri[dartx.substring](pathStart, end)); |
+ schemeEnd = dart.notNull(schemeEnd) - dart.notNull(start); |
+ hostStart = dart.notNull(hostStart) - dart.notNull(start); |
+ portStart = dart.notNull(portStart) - dart.notNull(start); |
+ pathStart = dart.notNull(pathStart) - (4 + dart.notNull(start)); |
+ queryStart = dart.notNull(queryStart) - (4 + dart.notNull(start)); |
+ fragmentStart = dart.notNull(fragmentStart) - (4 + dart.notNull(start)); |
+ start = 0; |
+ end = uri[dartx.length]; |
+ } |
+ } |
+ } |
+ } |
+ } |
+ if (isSimple) { |
+ if (dart.notNull(start) > 0 || dart.notNull(end) < dart.notNull(uri[dartx.length])) { |
+ uri = uri[dartx.substring](start, end); |
+ schemeEnd = dart.notNull(schemeEnd) - dart.notNull(start); |
+ hostStart = dart.notNull(hostStart) - dart.notNull(start); |
+ portStart = dart.notNull(portStart) - dart.notNull(start); |
+ pathStart = dart.notNull(pathStart) - dart.notNull(start); |
+ queryStart = dart.notNull(queryStart) - dart.notNull(start); |
+ fragmentStart = dart.notNull(fragmentStart) - dart.notNull(start); |
+ } |
+ return new core._SimpleUri(uri, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, scheme); |
+ } |
+ return core._Uri.notSimple(uri, start, end, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, scheme); |
+ } |
+ static encodeComponent(component) { |
+ return core._Uri._uriEncode(core._Uri._unreserved2396Table, component, convert.UTF8, false); |
+ } |
+ static encodeQueryComponent(component, opts) { |
+ let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
+ return core._Uri._uriEncode(core._Uri._unreservedTable, component, encoding, true); |
+ } |
+ static decodeComponent(encodedComponent) { |
+ return core._Uri._uriDecode(encodedComponent, 0, encodedComponent[dartx.length], convert.UTF8, false); |
+ } |
+ static decodeQueryComponent(encodedComponent, opts) { |
+ let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
+ return core._Uri._uriDecode(encodedComponent, 0, encodedComponent[dartx.length], encoding, true); |
+ } |
+ static encodeFull(uri) { |
+ return core._Uri._uriEncode(core._Uri._encodeFullTable, uri, convert.UTF8, false); |
+ } |
+ static decodeFull(uri) { |
+ return core._Uri._uriDecode(uri, 0, uri[dartx.length], convert.UTF8, false); |
+ } |
+ static splitQueryString(query, opts) { |
+ let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
+ return query[dartx.split]("&")[dartx.fold](MapOfString$String())(dart.map({}, core.String, core.String), dart.fn((map, element) => { |
+ let index = element[dartx.indexOf]("="); |
+ if (index == -1) { |
+ if (element != "") { |
+ map[dartx._set](core.Uri.decodeQueryComponent(element, {encoding: encoding}), ""); |
+ } |
+ } else if (index != 0) { |
+ let key = element[dartx.substring](0, index); |
+ let value = element[dartx.substring](dart.notNull(index) + 1); |
+ map[dartx._set](core.Uri.decodeQueryComponent(key, {encoding: encoding}), core.Uri.decodeQueryComponent(value, {encoding: encoding})); |
+ } |
+ return map; |
+ }, MapOfString$StringAndStringToMapOfString$String())); |
+ } |
+ static parseIPv4Address(host) { |
+ return core.Uri._parseIPv4Address(host, 0, host[dartx.length]); |
+ } |
+ static _parseIPv4Address(host, start, end) { |
+ function error(msg, position) { |
+ dart.throw(new core.FormatException(dart.str`Illegal IPv4 address, ${msg}`, host, position)); |
+ } |
+ dart.fn(error, StringAndintTovoid()); |
+ let result = typed_data.Uint8List.new(4); |
+ let partIndex = 0; |
+ let partStart = start; |
+ for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
+ let char = host[dartx.codeUnitAt](i); |
+ if (char != core._DOT) { |
+ if ((dart.notNull(char) ^ 48) >>> 0 > 9) { |
+ error("invalid character", i); |
+ } |
+ } else { |
+ if (partIndex == 3) { |
+ error('IPv4 address should contain exactly 4 parts', i); |
+ } |
+ let part = core.int.parse(host[dartx.substring](partStart, i)); |
+ if (dart.notNull(part) > 255) { |
+ error("each part must be in the range 0..255", partStart); |
+ } |
+ result[dartx._set](partIndex++, part); |
+ partStart = dart.notNull(i) + 1; |
+ } |
+ } |
+ if (partIndex != 3) { |
+ error('IPv4 address should contain exactly 4 parts', end); |
+ } |
+ let part = core.int.parse(host[dartx.substring](partStart, end)); |
+ if (dart.notNull(part) > 255) { |
+ error("each part must be in the range 0..255", partStart); |
+ } |
+ result[dartx._set](partIndex, part); |
+ return result; |
+ } |
+ static parseIPv6Address(host, start, end) { |
+ if (start === void 0) start = 0; |
+ if (end === void 0) end = null; |
+ if (end == null) end = host[dartx.length]; |
+ function error(msg, position) { |
+ if (position === void 0) position = null; |
+ dart.throw(new core.FormatException(dart.str`Illegal IPv6 address, ${msg}`, host, core.int._check(position))); |
+ } |
+ dart.fn(error, String__Tovoid()); |
+ function parseHex(start, end) { |
+ if (dart.notNull(end) - dart.notNull(start) > 4) { |
+ error('an IPv6 part can only contain a maximum of 4 hex digits', start); |
+ } |
+ let value = core.int.parse(host[dartx.substring](start, end), {radix: 16}); |
+ if (dart.notNull(value) < 0 || dart.notNull(value) > 65535) { |
+ error('each part must be in the range of `0x0..0xFFFF`', start); |
+ } |
+ return value; |
+ } |
+ dart.fn(parseHex, intAndintToint()); |
+ if (dart.notNull(host[dartx.length]) < 2) error('address is too short'); |
+ let parts = JSArrayOfint().of([]); |
+ let wildcardSeen = false; |
+ let seenDot = false; |
+ let partStart = start; |
+ for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
+ let char = host[dartx.codeUnitAt](i); |
+ if (char == core._COLON) { |
+ if (i == start) { |
+ i = dart.notNull(i) + 1; |
+ if (host[dartx.codeUnitAt](i) != core._COLON) { |
+ error('invalid start colon.', i); |
+ } |
+ partStart = i; |
+ } |
+ if (i == partStart) { |
+ if (wildcardSeen) { |
+ error('only one wildcard `::` is allowed', i); |
+ } |
+ wildcardSeen = true; |
+ parts[dartx.add](-1); |
+ } else { |
+ parts[dartx.add](parseHex(partStart, i)); |
+ } |
+ partStart = dart.notNull(i) + 1; |
+ } else if (char == core._DOT) { |
+ seenDot = true; |
+ } |
+ } |
+ if (parts[dartx.length] == 0) error('too few parts'); |
+ let atEnd = partStart == end; |
+ let isLastWildcard = parts[dartx.last] == -1; |
+ if (atEnd && !isLastWildcard) { |
+ error('expected a part after last `:`', end); |
+ } |
+ if (!atEnd) { |
+ if (!seenDot) { |
+ parts[dartx.add](parseHex(partStart, end)); |
+ } else { |
+ let last = core.Uri._parseIPv4Address(host, partStart, end); |
+ parts[dartx.add]((dart.notNull(last[dartx._get](0)) << 8 | dart.notNull(last[dartx._get](1))) >>> 0); |
+ parts[dartx.add]((dart.notNull(last[dartx._get](2)) << 8 | dart.notNull(last[dartx._get](3))) >>> 0); |
+ } |
+ } |
+ if (wildcardSeen) { |
+ if (dart.notNull(parts[dartx.length]) > 7) { |
+ error('an address with a wildcard must have less than 7 parts'); |
+ } |
+ } else if (parts[dartx.length] != 8) { |
+ error('an address without a wildcard must contain exactly 8 parts'); |
+ } |
+ let bytes = typed_data.Uint8List.new(16); |
+ for (let i = 0, index = 0; i < dart.notNull(parts[dartx.length]); i++) { |
+ let value = parts[dartx._get](i); |
+ if (value == -1) { |
+ let wildCardLength = 9 - dart.notNull(parts[dartx.length]); |
+ for (let j = 0; j < wildCardLength; j++) { |
+ bytes[dartx._set](index, 0); |
+ bytes[dartx._set](index + 1, 0); |
+ index = index + 2; |
+ } |
+ } else { |
+ bytes[dartx._set](index, value[dartx['>>']](8)); |
+ bytes[dartx._set](index + 1, dart.notNull(value) & 255); |
+ index = index + 2; |
+ } |
+ } |
+ return bytes; |
+ } |
+}; |
+dart.setSignature(core.Uri, { |
+ getters: () => ({hasScheme: dart.definiteFunctionType(core.bool, [])}), |
+ statics: () => ({ |
+ parse: dart.definiteFunctionType(core.Uri, [core.String], [core.int, core.int]), |
+ encodeComponent: dart.definiteFunctionType(core.String, [core.String]), |
+ encodeQueryComponent: dart.definiteFunctionType(core.String, [core.String], {encoding: convert.Encoding}), |
+ decodeComponent: dart.definiteFunctionType(core.String, [core.String]), |
+ decodeQueryComponent: dart.definiteFunctionType(core.String, [core.String], {encoding: convert.Encoding}), |
+ encodeFull: dart.definiteFunctionType(core.String, [core.String]), |
+ decodeFull: dart.definiteFunctionType(core.String, [core.String]), |
+ splitQueryString: dart.definiteFunctionType(core.Map$(core.String, core.String), [core.String], {encoding: convert.Encoding}), |
+ parseIPv4Address: dart.definiteFunctionType(core.List$(core.int), [core.String]), |
+ _parseIPv4Address: dart.definiteFunctionType(core.List$(core.int), [core.String, core.int, core.int]), |
+ parseIPv6Address: dart.definiteFunctionType(core.List$(core.int), [core.String], [core.int, core.int]) |
+ }), |
+ names: ['parse', 'encodeComponent', 'encodeQueryComponent', 'decodeComponent', 'decodeQueryComponent', 'encodeFull', 'decodeFull', 'splitQueryString', 'parseIPv4Address', '_parseIPv4Address', 'parseIPv6Address'] |
+}); |
const _userInfo = Symbol('_userInfo'); |
const _host = Symbol('_host'); |
const _port = Symbol('_port'); |
-const _path = Symbol('_path'); |
const _query = Symbol('_query'); |
const _fragment = Symbol('_fragment'); |
const _pathSegments = Symbol('_pathSegments'); |
+const _text = Symbol('_text'); |
+const _hashCodeCache = Symbol('_hashCodeCache'); |
const _queryParameters = Symbol('_queryParameters'); |
const _queryParameterLists = Symbol('_queryParameterLists'); |
const _writeAuthority = Symbol('_writeAuthority'); |
let const$51; |
const _mergePaths = Symbol('_mergePaths'); |
-const _toWindowsFilePath = Symbol('_toWindowsFilePath'); |
const _toFilePath = Symbol('_toFilePath'); |
const _isPathAbsolute = Symbol('_isPathAbsolute'); |
-core.Uri = class Uri extends core.Object { |
+const _initializeText = Symbol('_initializeText'); |
+core._Uri = class _Uri extends core.Object { |
_internal(scheme, userInfo, host, port, path, query, fragment) { |
this.scheme = scheme; |
this[_userInfo] = userInfo; |
this[_host] = host; |
this[_port] = port; |
- this[_path] = path; |
+ this.path = path; |
this[_query] = query; |
this[_fragment] = fragment; |
this[_pathSegments] = null; |
+ this[_text] = null; |
+ this[_hashCodeCache] = null; |
this[_queryParameters] = null; |
this[_queryParameterLists] = null; |
} |
+ static notSimple(uri, start, end, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, scheme) { |
+ if (scheme == null) { |
+ scheme = ""; |
+ if (dart.notNull(schemeEnd) > dart.notNull(start)) { |
+ scheme = core._Uri._makeScheme(uri, start, schemeEnd); |
+ } else if (schemeEnd == start) { |
+ core._Uri._fail(uri, start, "Invalid empty scheme"); |
+ } |
+ } |
+ let userInfo = ""; |
+ let host = null; |
+ let port = null; |
+ if (dart.notNull(hostStart) > dart.notNull(start)) { |
+ let userInfoStart = dart.notNull(schemeEnd) + 3; |
+ if (userInfoStart < dart.notNull(hostStart)) { |
+ userInfo = core._Uri._makeUserInfo(uri, userInfoStart, dart.notNull(hostStart) - 1); |
+ } |
+ host = core._Uri._makeHost(uri, hostStart, portStart, false); |
+ if (dart.notNull(portStart) + 1 < dart.notNull(pathStart)) { |
+ port = core.int.parse(uri[dartx.substring](dart.notNull(portStart) + 1, pathStart), {onError: dart.fn(_ => { |
+ dart.throw(new core.FormatException("Invalid port", uri, dart.notNull(portStart) + 1)); |
+ }, StringToNull())}); |
+ port = core._Uri._makePort(port, scheme); |
+ } |
+ } |
+ let path = core._Uri._makePath(uri, pathStart, queryStart, null, scheme, host != null); |
+ let query = null; |
+ if (dart.notNull(queryStart) < dart.notNull(fragmentStart)) { |
+ query = core._Uri._makeQuery(uri, dart.notNull(queryStart) + 1, fragmentStart, null); |
+ } |
+ let fragment = null; |
+ if (dart.notNull(fragmentStart) < dart.notNull(end)) { |
+ fragment = core._Uri._makeFragment(uri, dart.notNull(fragmentStart) + 1, end); |
+ } |
+ return new core._Uri._internal(scheme, userInfo, host, port, path, query, fragment); |
+ } |
static new(opts) { |
- let scheme = opts && 'scheme' in opts ? opts.scheme : ""; |
- let userInfo = opts && 'userInfo' in opts ? opts.userInfo : ""; |
+ let scheme = opts && 'scheme' in opts ? opts.scheme : null; |
+ let userInfo = opts && 'userInfo' in opts ? opts.userInfo : null; |
let host = opts && 'host' in opts ? opts.host : null; |
let port = opts && 'port' in opts ? opts.port : null; |
let path = opts && 'path' in opts ? opts.path : null; |
@@ -33260,33 +33688,37 @@ core.Uri = class Uri extends core.Object { |
let query = opts && 'query' in opts ? opts.query : null; |
let queryParameters = opts && 'queryParameters' in opts ? opts.queryParameters : null; |
let fragment = opts && 'fragment' in opts ? opts.fragment : null; |
- scheme = core.Uri._makeScheme(scheme, 0, core.Uri._stringOrNullLength(scheme)); |
- userInfo = core.Uri._makeUserInfo(userInfo, 0, core.Uri._stringOrNullLength(userInfo)); |
- host = core.Uri._makeHost(host, 0, core.Uri._stringOrNullLength(host), false); |
+ scheme = core._Uri._makeScheme(scheme, 0, core._stringOrNullLength(scheme)); |
+ userInfo = core._Uri._makeUserInfo(userInfo, 0, core._stringOrNullLength(userInfo)); |
+ host = core._Uri._makeHost(host, 0, core._stringOrNullLength(host), false); |
if (query == "") query = null; |
- query = core.Uri._makeQuery(query, 0, core.Uri._stringOrNullLength(query), queryParameters); |
- fragment = core.Uri._makeFragment(fragment, 0, core.Uri._stringOrNullLength(fragment)); |
- port = core.Uri._makePort(port, scheme); |
+ query = core._Uri._makeQuery(query, 0, core._stringOrNullLength(query), queryParameters); |
+ fragment = core._Uri._makeFragment(fragment, 0, core._stringOrNullLength(fragment)); |
+ port = core._Uri._makePort(port, scheme); |
let isFile = scheme == "file"; |
if (host == null && (dart.test(userInfo[dartx.isNotEmpty]) || port != null || isFile)) { |
host = ""; |
} |
let hasAuthority = host != null; |
- path = core.Uri._makePath(path, 0, core.Uri._stringOrNullLength(path), pathSegments, scheme, hasAuthority); |
+ path = core._Uri._makePath(path, 0, core._stringOrNullLength(path), pathSegments, scheme, hasAuthority); |
if (dart.test(scheme[dartx.isEmpty]) && host == null && !dart.test(path[dartx.startsWith]('/'))) { |
- path = core.Uri._normalizeRelativePath(path); |
+ let allowScheme = dart.test(scheme[dartx.isNotEmpty]) || host != null; |
+ path = core._Uri._normalizeRelativePath(path, allowScheme); |
} else { |
- path = core.Uri._removeDotSegments(path); |
+ path = core._Uri._removeDotSegments(path); |
} |
- return new core.Uri._internal(scheme, userInfo, host, port, path, query, fragment); |
+ if (host == null && dart.test(path[dartx.startsWith]("//"))) { |
+ host = ""; |
+ } |
+ return new core._Uri._internal(scheme, userInfo, host, port, path, query, fragment); |
} |
static http(authority, unencodedPath, queryParameters) { |
if (queryParameters === void 0) queryParameters = null; |
- return core.Uri._makeHttpUri("http", authority, unencodedPath, queryParameters); |
+ return core._Uri._check(core._Uri._makeHttpUri("http", authority, unencodedPath, queryParameters)); |
} |
static https(authority, unencodedPath, queryParameters) { |
if (queryParameters === void 0) queryParameters = null; |
- return core.Uri._makeHttpUri("https", authority, unencodedPath, queryParameters); |
+ return core._Uri._check(core._Uri._makeHttpUri("https", authority, unencodedPath, queryParameters)); |
} |
get authority() { |
if (!dart.test(this.hasAuthority)) return ""; |
@@ -33305,7 +33737,7 @@ core.Uri = class Uri extends core.Object { |
return this[_host]; |
} |
get port() { |
- if (this[_port] == null) return core.Uri._defaultPort(this.scheme); |
+ if (this[_port] == null) return core._Uri._defaultPort(this.scheme); |
return this[_port]; |
} |
static _defaultPort(scheme) { |
@@ -33313,181 +33745,34 @@ core.Uri = class Uri extends core.Object { |
if (scheme == "https") return 443; |
return 0; |
} |
- get path() { |
- return this[_path]; |
- } |
get query() { |
- return this[_query] == null ? "" : this[_query]; |
+ return this[_query] != null ? this[_query] : ""; |
} |
get fragment() { |
- return this[_fragment] == null ? "" : this[_fragment]; |
- } |
- static parse(uri, start, end) { |
- if (start === void 0) start = 0; |
- if (end === void 0) end = null; |
- let EOI = -1; |
- let scheme = ""; |
- let userinfo = ""; |
- let host = null; |
- let port = null; |
- let path = null; |
- let query = null; |
- let fragment = null; |
- if (end == null) end = uri[dartx.length]; |
- let index = start; |
- let pathStart = start; |
- let char = EOI; |
- function parseAuth() { |
- if (index == end) { |
- char = EOI; |
- return; |
- } |
- let authStart = index; |
- let lastColon = -1; |
- let lastAt = -1; |
- char = uri[dartx.codeUnitAt](index); |
- while (dart.notNull(index) < dart.notNull(end)) { |
- char = uri[dartx.codeUnitAt](index); |
- if (char == core.Uri._SLASH || char == core.Uri._QUESTION || char == core.Uri._NUMBER_SIGN) { |
- break; |
- } |
- if (char == core.Uri._AT_SIGN) { |
- lastAt = index; |
- lastColon = -1; |
- } else if (char == core.Uri._COLON) { |
- lastColon = index; |
- } else if (char == core.Uri._LEFT_BRACKET) { |
- lastColon = -1; |
- let endBracket = uri[dartx.indexOf](']', dart.notNull(index) + 1); |
- if (endBracket == -1) { |
- index = end; |
- char = EOI; |
- break; |
- } else { |
- index = endBracket; |
- } |
- } |
- index = dart.notNull(index) + 1; |
- char = EOI; |
- } |
- let hostStart = authStart; |
- let hostEnd = index; |
- if (dart.notNull(lastAt) >= 0) { |
- userinfo = core.Uri._makeUserInfo(uri, authStart, lastAt); |
- hostStart = dart.notNull(lastAt) + 1; |
- } |
- if (dart.notNull(lastColon) >= 0) { |
- let portNumber = null; |
- if (dart.notNull(lastColon) + 1 < dart.notNull(index)) { |
- portNumber = 0; |
- for (let i = dart.notNull(lastColon) + 1; i < dart.notNull(index); i++) { |
- let digit = uri[dartx.codeUnitAt](i); |
- if (core.Uri._ZERO > dart.notNull(digit) || core.Uri._NINE < dart.notNull(digit)) { |
- core.Uri._fail(uri, i, "Invalid port number"); |
- } |
- portNumber = dart.notNull(portNumber) * 10 + (dart.notNull(digit) - core.Uri._ZERO); |
- } |
- } |
- port = core.Uri._makePort(portNumber, scheme); |
- hostEnd = lastColon; |
- } |
- host = core.Uri._makeHost(uri, hostStart, hostEnd, true); |
- if (dart.notNull(index) < dart.notNull(end)) { |
- char = uri[dartx.codeUnitAt](index); |
- } |
- } |
- dart.fn(parseAuth, VoidTovoid$()); |
- let NOT_IN_PATH = 0; |
- let IN_PATH = 1; |
- let ALLOW_AUTH = 2; |
- let state = NOT_IN_PATH; |
- let i = index; |
- while (dart.notNull(i) < dart.notNull(end)) { |
- char = uri[dartx.codeUnitAt](i); |
- if (char == core.Uri._QUESTION || char == core.Uri._NUMBER_SIGN) { |
- state = NOT_IN_PATH; |
- break; |
- } |
- if (char == core.Uri._SLASH) { |
- state = i == start ? ALLOW_AUTH : IN_PATH; |
- break; |
- } |
- if (char == core.Uri._COLON) { |
- if (i == start) core.Uri._fail(uri, start, "Invalid empty scheme"); |
- scheme = core.Uri._makeScheme(uri, start, i); |
- i = dart.notNull(i) + 1; |
- pathStart = i; |
- if (i == end) { |
- char = EOI; |
- state = NOT_IN_PATH; |
- } else { |
- char = uri[dartx.codeUnitAt](i); |
- if (char == core.Uri._QUESTION || char == core.Uri._NUMBER_SIGN) { |
- state = NOT_IN_PATH; |
- } else if (char == core.Uri._SLASH) { |
- state = ALLOW_AUTH; |
- } else { |
- state = IN_PATH; |
+ return this[_fragment] != null ? this[_fragment] : ""; |
+ } |
+ isScheme(scheme) { |
+ let thisScheme = this.scheme; |
+ if (scheme == null) return thisScheme[dartx.isEmpty]; |
+ if (scheme[dartx.length] != thisScheme[dartx.length]) return false; |
+ return core._Uri._compareScheme(scheme, thisScheme); |
+ } |
+ static _compareScheme(scheme, uri) { |
+ for (let i = 0; i < dart.notNull(scheme[dartx.length]); i++) { |
+ let schemeChar = scheme[dartx.codeUnitAt](i); |
+ let uriChar = uri[dartx.codeUnitAt](i); |
+ let delta = (dart.notNull(schemeChar) ^ dart.notNull(uriChar)) >>> 0; |
+ if (delta != 0) { |
+ if (delta == 32) { |
+ let lowerChar = (dart.notNull(uriChar) | delta) >>> 0; |
+ if (97 <= lowerChar && lowerChar <= 122) { |
+ continue; |
} |
} |
- break; |
- } |
- i = dart.notNull(i) + 1; |
- char = EOI; |
- } |
- index = i; |
- if (state == ALLOW_AUTH) { |
- dart.assert(char == core.Uri._SLASH); |
- index = dart.notNull(index) + 1; |
- if (index == end) { |
- char = EOI; |
- state = NOT_IN_PATH; |
- } else { |
- char = uri[dartx.codeUnitAt](index); |
- if (char == core.Uri._SLASH) { |
- index = dart.notNull(index) + 1; |
- parseAuth(); |
- pathStart = index; |
- } |
- if (char == core.Uri._QUESTION || char == core.Uri._NUMBER_SIGN || char == EOI) { |
- state = NOT_IN_PATH; |
- } else { |
- state = IN_PATH; |
- } |
- } |
- } |
- dart.assert(state == IN_PATH || state == NOT_IN_PATH); |
- if (state == IN_PATH) { |
- while ((index = dart.notNull(index) + 1) < dart.notNull(end)) { |
- char = uri[dartx.codeUnitAt](index); |
- if (char == core.Uri._QUESTION || char == core.Uri._NUMBER_SIGN) { |
- break; |
- } |
- char = EOI; |
- } |
- state = NOT_IN_PATH; |
- } |
- dart.assert(state == NOT_IN_PATH); |
- let hasAuthority = host != null; |
- path = core.Uri._makePath(uri, pathStart, index, null, scheme, hasAuthority); |
- if (char == core.Uri._QUESTION) { |
- let numberSignIndex = -1; |
- for (let i = dart.notNull(index) + 1; i < dart.notNull(end); i++) { |
- if (uri[dartx.codeUnitAt](i) == core.Uri._NUMBER_SIGN) { |
- numberSignIndex = i; |
- break; |
- } |
- } |
- if (numberSignIndex < 0) { |
- query = core.Uri._makeQuery(uri, dart.notNull(index) + 1, end, null); |
- } else { |
- query = core.Uri._makeQuery(uri, dart.notNull(index) + 1, numberSignIndex, null); |
- fragment = core.Uri._makeFragment(uri, numberSignIndex + 1, end); |
+ return false; |
} |
- } else if (char == core.Uri._NUMBER_SIGN) { |
- fragment = core.Uri._makeFragment(uri, dart.notNull(index) + 1, end); |
} |
- return new core.Uri._internal(scheme, userinfo, host, port, path, query, fragment); |
+ return true; |
} |
static _fail(uri, index, message) { |
dart.throw(new core.FormatException(message, uri, index)); |
@@ -33500,7 +33785,8 @@ core.Uri = class Uri extends core.Object { |
let hostStart = 0; |
let hasUserInfo = false; |
for (let i = 0; i < dart.notNull(authority[dartx.length]); i++) { |
- if (authority[dartx.codeUnitAt](i) == core.Uri._AT_SIGN) { |
+ let atSign = 64; |
+ if (authority[dartx.codeUnitAt](i) == atSign) { |
hasUserInfo = true; |
userInfo = authority[dartx.substring](0, i); |
hostStart = i + 1; |
@@ -33508,22 +33794,22 @@ core.Uri = class Uri extends core.Object { |
} |
} |
let hostEnd = hostStart; |
- if (hostStart < dart.notNull(authority[dartx.length]) && authority[dartx.codeUnitAt](hostStart) == core.Uri._LEFT_BRACKET) { |
+ if (hostStart < dart.notNull(authority[dartx.length]) && authority[dartx.codeUnitAt](hostStart) == core._LEFT_BRACKET) { |
for (; hostEnd < dart.notNull(authority[dartx.length]); hostEnd++) { |
- if (authority[dartx.codeUnitAt](hostEnd) == core.Uri._RIGHT_BRACKET) break; |
+ if (authority[dartx.codeUnitAt](hostEnd) == core._RIGHT_BRACKET) break; |
} |
if (hostEnd == authority[dartx.length]) { |
dart.throw(new core.FormatException("Invalid IPv6 host entry.", authority, hostStart)); |
} |
core.Uri.parseIPv6Address(authority, hostStart + 1, hostEnd); |
hostEnd++; |
- if (hostEnd != authority[dartx.length] && authority[dartx.codeUnitAt](hostEnd) != core.Uri._COLON) { |
+ if (hostEnd != authority[dartx.length] && authority[dartx.codeUnitAt](hostEnd) != core._COLON) { |
dart.throw(new core.FormatException("Invalid end of authority", authority, hostEnd)); |
} |
} |
let hasPort = false; |
for (; hostEnd < dart.notNull(authority[dartx.length]); hostEnd++) { |
- if (authority[dartx.codeUnitAt](hostEnd) == core.Uri._COLON) { |
+ if (authority[dartx.codeUnitAt](hostEnd) == core._COLON) { |
let portString = authority[dartx.substring](hostEnd + 1); |
if (dart.test(portString[dartx.isNotEmpty])) port = core.int.parse(portString); |
break; |
@@ -33535,33 +33821,13 @@ core.Uri = class Uri extends core.Object { |
} |
static file(path, opts) { |
let windows = opts && 'windows' in opts ? opts.windows : null; |
- windows = windows == null ? core.Uri._isWindows : windows; |
- return core.Uri._check(dart.test(windows) ? core.Uri._makeWindowsFileUrl(path, false) : core.Uri._makeFileUri(path, false)); |
+ windows = windows == null ? core._Uri._isWindows : windows; |
+ return core._Uri._check(dart.test(windows) ? core._Uri._makeWindowsFileUrl(path, false) : core._Uri._makeFileUri(path, false)); |
} |
static directory(path, opts) { |
let windows = opts && 'windows' in opts ? opts.windows : null; |
- windows = windows == null ? core.Uri._isWindows : windows; |
- return core.Uri._check(dart.test(windows) ? core.Uri._makeWindowsFileUrl(path, true) : core.Uri._makeFileUri(path, true)); |
- } |
- static dataFromString(content, opts) { |
- let mimeType = opts && 'mimeType' in opts ? opts.mimeType : null; |
- let encoding = opts && 'encoding' in opts ? opts.encoding : null; |
- let parameters = opts && 'parameters' in opts ? opts.parameters : null; |
- let base64 = opts && 'base64' in opts ? opts.base64 : false; |
- let data = core.UriData.fromString(content, {mimeType: mimeType, encoding: encoding, parameters: parameters, base64: base64}); |
- return data.uri; |
- } |
- static dataFromBytes(bytes, opts) { |
- let mimeType = opts && 'mimeType' in opts ? opts.mimeType : "application/octet-stream"; |
- let parameters = opts && 'parameters' in opts ? opts.parameters : null; |
- let percentEncoded = opts && 'percentEncoded' in opts ? opts.percentEncoded : false; |
- let data = core.UriData.fromBytes(bytes, {mimeType: mimeType, parameters: parameters, percentEncoded: percentEncoded}); |
- return data.uri; |
- } |
- static get base() { |
- let uri = _js_helper.Primitives.currentUri(); |
- if (uri != null) return core.Uri.parse(uri); |
- dart.throw(new core.UnsupportedError("'Uri.base' is not supported")); |
+ windows = windows == null ? core._Uri._isWindows : windows; |
+ return core._Uri._check(dart.test(windows) ? core._Uri._makeWindowsFileUrl(path, true) : core._Uri._makeFileUri(path, true)); |
} |
static get _isWindows() { |
return false; |
@@ -33590,7 +33856,7 @@ core.Uri = class Uri extends core.Object { |
} |
} |
static _checkWindowsDriveLetter(charCode, argumentError) { |
- if (core.Uri._UPPER_CASE_A <= dart.notNull(charCode) && dart.notNull(charCode) <= core.Uri._UPPER_CASE_Z || core.Uri._LOWER_CASE_A <= dart.notNull(charCode) && dart.notNull(charCode) <= core.Uri._LOWER_CASE_Z) { |
+ if (core._UPPER_CASE_A <= dart.notNull(charCode) && dart.notNull(charCode) <= core._UPPER_CASE_Z || core._LOWER_CASE_A <= dart.notNull(charCode) && dart.notNull(charCode) <= core._LOWER_CASE_Z) { |
return; |
} |
if (dart.test(argumentError)) { |
@@ -33617,7 +33883,7 @@ core.Uri = class Uri extends core.Object { |
path = path[dartx.replaceRange](0, 7, '\\'); |
} else { |
path = path[dartx.substring](4); |
- if (dart.notNull(path[dartx.length]) < 3 || path[dartx.codeUnitAt](1) != core.Uri._COLON || path[dartx.codeUnitAt](2) != core.Uri._BACKSLASH) { |
+ if (dart.notNull(path[dartx.length]) < 3 || path[dartx.codeUnitAt](1) != core._COLON || path[dartx.codeUnitAt](2) != core._BACKSLASH) { |
dart.throw(new core.ArgumentError("Windows paths with \\\\?\\ prefix must be absolute")); |
} |
} |
@@ -33625,16 +33891,16 @@ core.Uri = class Uri extends core.Object { |
path = path[dartx.replaceAll]("/", '\\'); |
} |
let sep = '\\'; |
- if (dart.notNull(path[dartx.length]) > 1 && path[dartx.codeUnitAt](1) == core.Uri._COLON) { |
- core.Uri._checkWindowsDriveLetter(path[dartx.codeUnitAt](0), true); |
- if (path[dartx.length] == 2 || path[dartx.codeUnitAt](2) != core.Uri._BACKSLASH) { |
+ if (dart.notNull(path[dartx.length]) > 1 && path[dartx.codeUnitAt](1) == core._COLON) { |
+ core._Uri._checkWindowsDriveLetter(path[dartx.codeUnitAt](0), true); |
+ if (path[dartx.length] == 2 || path[dartx.codeUnitAt](2) != core._BACKSLASH) { |
dart.throw(new core.ArgumentError("Windows paths with drive letter must be absolute")); |
} |
let pathSegments = path[dartx.split](sep); |
if (dart.test(slashTerminated) && dart.test(pathSegments[dartx.last][dartx.isNotEmpty])) { |
pathSegments[dartx.add](""); |
} |
- core.Uri._checkWindowsPathReservedCharacters(pathSegments, true, 1); |
+ core._Uri._checkWindowsPathReservedCharacters(pathSegments, true, 1); |
return core.Uri.new({scheme: "file", pathSegments: pathSegments}); |
} |
if (dart.test(path[dartx.startsWith](sep))) { |
@@ -33643,7 +33909,7 @@ core.Uri = class Uri extends core.Object { |
let hostPart = dart.notNull(pathStart) < 0 ? path[dartx.substring](2) : path[dartx.substring](2, pathStart); |
let pathPart = dart.notNull(pathStart) < 0 ? "" : path[dartx.substring](dart.notNull(pathStart) + 1); |
let pathSegments = pathPart[dartx.split](sep); |
- core.Uri._checkWindowsPathReservedCharacters(pathSegments, true); |
+ core._Uri._checkWindowsPathReservedCharacters(pathSegments, true); |
if (dart.test(slashTerminated) && dart.test(pathSegments[dartx.last][dartx.isNotEmpty])) { |
pathSegments[dartx.add](""); |
} |
@@ -33653,12 +33919,12 @@ core.Uri = class Uri extends core.Object { |
if (dart.test(slashTerminated) && dart.test(pathSegments[dartx.last][dartx.isNotEmpty])) { |
pathSegments[dartx.add](""); |
} |
- core.Uri._checkWindowsPathReservedCharacters(pathSegments, true); |
+ core._Uri._checkWindowsPathReservedCharacters(pathSegments, true); |
return core.Uri.new({scheme: "file", pathSegments: pathSegments}); |
} |
} else { |
let pathSegments = path[dartx.split](sep); |
- core.Uri._checkWindowsPathReservedCharacters(pathSegments, true); |
+ core._Uri._checkWindowsPathReservedCharacters(pathSegments, true); |
if (dart.test(slashTerminated) && dart.test(pathSegments[dartx.isNotEmpty]) && dart.test(pathSegments[dartx.last][dartx.isNotEmpty])) { |
pathSegments[dartx.add](""); |
} |
@@ -33677,27 +33943,27 @@ core.Uri = class Uri extends core.Object { |
let fragment = opts && 'fragment' in opts ? opts.fragment : null; |
let schemeChanged = false; |
if (scheme != null) { |
- scheme = core.Uri._makeScheme(scheme, 0, scheme[dartx.length]); |
- schemeChanged = true; |
+ scheme = core._Uri._makeScheme(scheme, 0, scheme[dartx.length]); |
+ schemeChanged = scheme != this.scheme; |
} else { |
scheme = this.scheme; |
} |
let isFile = scheme == "file"; |
if (userInfo != null) { |
- userInfo = core.Uri._makeUserInfo(userInfo, 0, userInfo[dartx.length]); |
+ userInfo = core._Uri._makeUserInfo(userInfo, 0, userInfo[dartx.length]); |
} else { |
userInfo = this[_userInfo]; |
} |
if (port != null) { |
- port = core.Uri._makePort(port, scheme); |
+ port = core._Uri._makePort(port, scheme); |
} else { |
port = this[_port]; |
if (schemeChanged) { |
- port = core.Uri._makePort(port, scheme); |
+ port = core._Uri._makePort(port, scheme); |
} |
} |
if (host != null) { |
- host = core.Uri._makeHost(host, 0, host[dartx.length], false); |
+ host = core._Uri._makeHost(host, 0, host[dartx.length], false); |
} else if (dart.test(this.hasAuthority)) { |
host = this[_host]; |
} else if (dart.test(userInfo[dartx.isNotEmpty]) || port != null || isFile) { |
@@ -33705,34 +33971,34 @@ core.Uri = class Uri extends core.Object { |
} |
let hasAuthority = host != null; |
if (path != null || pathSegments != null) { |
- path = core.Uri._makePath(path, 0, core.Uri._stringOrNullLength(path), pathSegments, scheme, hasAuthority); |
+ path = core._Uri._makePath(path, 0, core._stringOrNullLength(path), pathSegments, scheme, hasAuthority); |
} else { |
- path = this[_path]; |
+ path = this.path; |
if ((isFile || hasAuthority && !dart.test(path[dartx.isEmpty])) && !dart.test(path[dartx.startsWith]('/'))) { |
path = "/" + dart.notNull(path); |
} |
} |
if (query != null || queryParameters != null) { |
- query = core.Uri._makeQuery(query, 0, core.Uri._stringOrNullLength(query), queryParameters); |
+ query = core._Uri._makeQuery(query, 0, core._stringOrNullLength(query), queryParameters); |
} else { |
query = this[_query]; |
} |
if (fragment != null) { |
- fragment = core.Uri._makeFragment(fragment, 0, fragment[dartx.length]); |
+ fragment = core._Uri._makeFragment(fragment, 0, fragment[dartx.length]); |
} else { |
fragment = this[_fragment]; |
} |
- return new core.Uri._internal(scheme, userInfo, host, port, path, query, fragment); |
+ return new core._Uri._internal(scheme, userInfo, host, port, path, query, fragment); |
} |
removeFragment() { |
if (!dart.test(this.hasFragment)) return this; |
- return new core.Uri._internal(this.scheme, this[_userInfo], this[_host], this[_port], this[_path], this[_query], null); |
+ return new core._Uri._internal(this.scheme, this[_userInfo], this[_host], this[_port], this.path, this[_query], null); |
} |
get pathSegments() { |
let result = this[_pathSegments]; |
if (result != null) return result; |
let pathToSplit = this.path; |
- if (dart.test(pathToSplit[dartx.isNotEmpty]) && pathToSplit[dartx.codeUnitAt](0) == core.Uri._SLASH) { |
+ if (dart.test(pathToSplit[dartx.isNotEmpty]) && pathToSplit[dartx.codeUnitAt](0) == core._SLASH) { |
pathToSplit = pathToSplit[dartx.substring](1); |
} |
result = pathToSplit == "" ? const$51 || (const$51 = dart.constList([], core.String)) : ListOfString().unmodifiable(pathToSplit[dartx.split]("/")[dartx.map](core.String)(core.Uri.decodeComponent)); |
@@ -33747,7 +34013,7 @@ core.Uri = class Uri extends core.Object { |
} |
get queryParametersAll() { |
if (this[_queryParameterLists] == null) { |
- let queryParameterLists = core.Uri._splitQueryStringAll(this.query); |
+ let queryParameterLists = core._Uri._splitQueryStringAll(this.query); |
for (let key of queryParameterLists[dartx.keys]) { |
queryParameterLists[dartx._set](key, ListOfString().unmodifiable(core.Iterable._check(queryParameterLists[dartx._get](key)))); |
} |
@@ -33756,36 +34022,36 @@ core.Uri = class Uri extends core.Object { |
return this[_queryParameterLists]; |
} |
normalizePath() { |
- let path = core.Uri._normalizePath(this[_path], this.scheme, this.hasAuthority); |
- if (core.identical(path, this[_path])) return this; |
+ let path = core._Uri._normalizePath(this.path, this.scheme, this.hasAuthority); |
+ if (core.identical(path, this.path)) return this; |
return this.replace({path: path}); |
} |
static _makePort(port, scheme) { |
- if (port != null && port == core.Uri._defaultPort(scheme)) return null; |
+ if (port != null && port == core._Uri._defaultPort(scheme)) return null; |
return port; |
} |
static _makeHost(host, start, end, strictIPv6) { |
if (host == null) return null; |
if (start == end) return ""; |
- if (host[dartx.codeUnitAt](start) == core.Uri._LEFT_BRACKET) { |
- if (host[dartx.codeUnitAt](dart.notNull(end) - 1) != core.Uri._RIGHT_BRACKET) { |
- core.Uri._fail(host, start, 'Missing end `]` to match `[` in host'); |
+ if (host[dartx.codeUnitAt](start) == core._LEFT_BRACKET) { |
+ if (host[dartx.codeUnitAt](dart.notNull(end) - 1) != core._RIGHT_BRACKET) { |
+ core._Uri._fail(host, start, 'Missing end `]` to match `[` in host'); |
} |
core.Uri.parseIPv6Address(host, dart.notNull(start) + 1, dart.notNull(end) - 1); |
return host[dartx.substring](start, end)[dartx.toLowerCase](); |
} |
if (!dart.test(strictIPv6)) { |
for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
- if (host[dartx.codeUnitAt](i) == core.Uri._COLON) { |
+ if (host[dartx.codeUnitAt](i) == core._COLON) { |
core.Uri.parseIPv6Address(host, start, end); |
return dart.str`[${host}]`; |
} |
} |
} |
- return core.Uri._normalizeRegName(host, start, end); |
+ return core._Uri._normalizeRegName(host, start, end); |
} |
static _isRegNameChar(char) { |
- return dart.notNull(char) < 127 && (dart.notNull(core.Uri._regNameTable[dartx._get](char[dartx['>>']](4))) & 1 << (dart.notNull(char) & 15)) != 0; |
+ return dart.notNull(char) < 127 && (dart.notNull(core._Uri._regNameTable[dartx._get](char[dartx['>>']](4))) & 1 << (dart.notNull(char) & 15)) != 0; |
} |
static _normalizeRegName(host, start, end) { |
let buffer = null; |
@@ -33794,8 +34060,8 @@ core.Uri = class Uri extends core.Object { |
let isNormalized = true; |
while (dart.notNull(index) < dart.notNull(end)) { |
let char = host[dartx.codeUnitAt](index); |
- if (char == core.Uri._PERCENT) { |
- let replacement = core.Uri._normalizeEscape(host, index, true); |
+ if (char == core._PERCENT) { |
+ let replacement = core._Uri._normalizeEscape(host, index, true); |
if (replacement == null && isNormalized) { |
index = dart.notNull(index) + 3; |
continue; |
@@ -33815,8 +34081,8 @@ core.Uri = class Uri extends core.Object { |
index = dart.notNull(index) + sourceLength; |
sectionStart = index; |
isNormalized = true; |
- } else if (dart.test(core.Uri._isRegNameChar(char))) { |
- if (isNormalized && core.Uri._UPPER_CASE_A <= dart.notNull(char) && core.Uri._UPPER_CASE_Z >= dart.notNull(char)) { |
+ } else if (dart.test(core._Uri._isRegNameChar(char))) { |
+ if (isNormalized && core._UPPER_CASE_A <= dart.notNull(char) && core._UPPER_CASE_Z >= dart.notNull(char)) { |
if (buffer == null) buffer = new core.StringBuffer(); |
if (dart.notNull(sectionStart) < dart.notNull(index)) { |
buffer.write(host[dartx.substring](sectionStart, index)); |
@@ -33825,8 +34091,8 @@ core.Uri = class Uri extends core.Object { |
isNormalized = false; |
} |
index = dart.notNull(index) + 1; |
- } else if (dart.test(core.Uri._isGeneralDelimiter(char))) { |
- core.Uri._fail(host, index, "Invalid character"); |
+ } else if (dart.test(core._Uri._isGeneralDelimiter(char))) { |
+ core._Uri._fail(host, index, "Invalid character"); |
} else { |
let sourceLength = 1; |
if ((dart.notNull(char) & 64512) == 55296 && dart.notNull(index) + 1 < dart.notNull(end)) { |
@@ -33840,7 +34106,7 @@ core.Uri = class Uri extends core.Object { |
let slice = host[dartx.substring](sectionStart, index); |
if (!isNormalized) slice = slice[dartx.toLowerCase](); |
buffer.write(slice); |
- buffer.write(core.Uri._escapeChar(char)); |
+ buffer.write(core._Uri._escapeChar(char)); |
index = dart.notNull(index) + sourceLength; |
sectionStart = index; |
} |
@@ -33856,26 +34122,33 @@ core.Uri = class Uri extends core.Object { |
static _makeScheme(scheme, start, end) { |
if (start == end) return ""; |
let firstCodeUnit = scheme[dartx.codeUnitAt](start); |
- if (!dart.test(core.Uri._isAlphabeticCharacter(firstCodeUnit))) { |
- core.Uri._fail(scheme, start, "Scheme not starting with alphabetic character"); |
+ if (!dart.test(core._Uri._isAlphabeticCharacter(firstCodeUnit))) { |
+ core._Uri._fail(scheme, start, "Scheme not starting with alphabetic character"); |
} |
let containsUpperCase = false; |
for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
let codeUnit = scheme[dartx.codeUnitAt](i); |
- if (!dart.test(core.Uri._isSchemeCharacter(codeUnit))) { |
- core.Uri._fail(scheme, i, "Illegal scheme character"); |
+ if (!dart.test(core._Uri._isSchemeCharacter(codeUnit))) { |
+ core._Uri._fail(scheme, i, "Illegal scheme character"); |
} |
- if (core.Uri._UPPER_CASE_A <= dart.notNull(codeUnit) && dart.notNull(codeUnit) <= core.Uri._UPPER_CASE_Z) { |
+ if (core._UPPER_CASE_A <= dart.notNull(codeUnit) && dart.notNull(codeUnit) <= core._UPPER_CASE_Z) { |
containsUpperCase = true; |
} |
} |
scheme = scheme[dartx.substring](start, end); |
if (containsUpperCase) scheme = scheme[dartx.toLowerCase](); |
+ return core._Uri._canonicalizeScheme(scheme); |
+ } |
+ static _canonicalizeScheme(scheme) { |
+ if (scheme == "http") return "http"; |
+ if (scheme == "file") return "file"; |
+ if (scheme == "https") return "https"; |
+ if (scheme == "package") return "package"; |
return scheme; |
} |
static _makeUserInfo(userInfo, start, end) { |
if (userInfo == null) return ""; |
- return core.Uri._normalize(userInfo, start, end, core.Uri._userinfoTable); |
+ return core._Uri._normalizeOrSubstring(userInfo, start, end, core._Uri._userinfoTable); |
} |
static _makePath(path, start, end, pathSegments, scheme, hasAuthority) { |
let isFile = scheme == "file"; |
@@ -33886,30 +34159,32 @@ core.Uri = class Uri extends core.Object { |
} |
let result = null; |
if (path != null) { |
- result = core.Uri._normalize(path, start, end, core.Uri._pathCharOrSlashTable); |
+ result = core._Uri._normalizeOrSubstring(path, start, end, core._Uri._pathCharOrSlashTable); |
} else { |
- result = pathSegments[dartx.map](core.String)(dart.fn(s => core.Uri._uriEncode(core.Uri._pathCharTable, s, convert.UTF8, false), StringToString$()))[dartx.join]("/"); |
+ result = pathSegments[dartx.map](core.String)(dart.fn(s => core._Uri._uriEncode(core._Uri._pathCharTable, s, convert.UTF8, false), StringToString$()))[dartx.join]("/"); |
} |
if (dart.test(dart.dload(result, 'isEmpty'))) { |
if (isFile) return "/"; |
} else if (ensureLeadingSlash && !dart.test(dart.dsend(result, 'startsWith', '/'))) { |
result = "/" + dart.notNull(core.String._check(result)); |
} |
- result = core.Uri._normalizePath(core.String._check(result), scheme, hasAuthority); |
+ result = core._Uri._normalizePath(core.String._check(result), scheme, hasAuthority); |
return core.String._check(result); |
} |
static _normalizePath(path, scheme, hasAuthority) { |
if (dart.test(scheme[dartx.isEmpty]) && !dart.test(hasAuthority) && !dart.test(path[dartx.startsWith]('/'))) { |
- return core.Uri._normalizeRelativePath(path); |
+ return core._Uri._normalizeRelativePath(path, dart.test(scheme[dartx.isNotEmpty]) || dart.test(hasAuthority)); |
} |
- return core.Uri._removeDotSegments(path); |
+ return core._Uri._removeDotSegments(path); |
} |
static _makeQuery(query, start, end, queryParameters) { |
- if (query == null && queryParameters == null) return null; |
- if (query != null && queryParameters != null) { |
- dart.throw(new core.ArgumentError('Both query and queryParameters specified')); |
+ if (query != null) { |
+ if (queryParameters != null) { |
+ dart.throw(new core.ArgumentError('Both query and queryParameters specified')); |
+ } |
+ return core._Uri._normalizeOrSubstring(query, start, end, core._Uri._queryCharTable); |
} |
- if (query != null) return core.Uri._normalize(query, start, end, core.Uri._queryCharTable); |
+ if (queryParameters == null) return null; |
let result = new core.StringBuffer(); |
let separator = ""; |
function writeParameter(key, value) { |
@@ -33937,52 +34212,40 @@ core.Uri = class Uri extends core.Object { |
} |
static _makeFragment(fragment, start, end) { |
if (fragment == null) return null; |
- return core.Uri._normalize(fragment, start, end, core.Uri._queryCharTable); |
- } |
- static _stringOrNullLength(s) { |
- return s == null ? 0 : s[dartx.length]; |
+ return core._Uri._normalizeOrSubstring(fragment, start, end, core._Uri._queryCharTable); |
} |
static _normalizeEscape(source, index, lowerCase) { |
- dart.assert(source[dartx.codeUnitAt](index) == core.Uri._PERCENT); |
+ dart.assert(source[dartx.codeUnitAt](index) == core._PERCENT); |
if (dart.notNull(index) + 2 >= dart.notNull(source[dartx.length])) { |
return "%"; |
} |
let firstDigit = source[dartx.codeUnitAt](dart.notNull(index) + 1); |
let secondDigit = source[dartx.codeUnitAt](dart.notNull(index) + 2); |
- let firstDigitValue = core.Uri._parseHexDigit(firstDigit); |
- let secondDigitValue = core.Uri._parseHexDigit(secondDigit); |
+ let firstDigitValue = _internal.hexDigitValue(firstDigit); |
+ let secondDigitValue = _internal.hexDigitValue(secondDigit); |
if (dart.notNull(firstDigitValue) < 0 || dart.notNull(secondDigitValue) < 0) { |
return "%"; |
} |
let value = dart.notNull(firstDigitValue) * 16 + dart.notNull(secondDigitValue); |
- if (dart.test(core.Uri._isUnreservedChar(value))) { |
- if (dart.test(lowerCase) && core.Uri._UPPER_CASE_A <= value && core.Uri._UPPER_CASE_Z >= value) { |
+ if (dart.test(core._Uri._isUnreservedChar(value))) { |
+ if (dart.test(lowerCase) && core._UPPER_CASE_A <= value && core._UPPER_CASE_Z >= value) { |
value = (value | 32) >>> 0; |
} |
return core.String.fromCharCode(value); |
} |
- if (dart.notNull(firstDigit) >= core.Uri._LOWER_CASE_A || dart.notNull(secondDigit) >= core.Uri._LOWER_CASE_A) { |
+ if (dart.notNull(firstDigit) >= core._LOWER_CASE_A || dart.notNull(secondDigit) >= core._LOWER_CASE_A) { |
return source[dartx.substring](index, dart.notNull(index) + 3)[dartx.toUpperCase](); |
} |
return null; |
} |
- static _parseHexDigit(char) { |
- let digit = (dart.notNull(char) ^ core.Uri._ZERO) >>> 0; |
- if (digit <= 9) return digit; |
- let lowerCase = (dart.notNull(char) | 32) >>> 0; |
- if (core.Uri._LOWER_CASE_A <= lowerCase && lowerCase <= core.Uri._LOWER_CASE_F) { |
- return lowerCase - (core.Uri._LOWER_CASE_A - 10); |
- } |
- return -1; |
- } |
static _escapeChar(char) { |
dart.assert(dart.notNull(char) <= 1114111); |
let codeUnits = null; |
if (dart.notNull(char) < 128) { |
codeUnits = ListOfint().new(3); |
- codeUnits[dartx._set](0, core.Uri._PERCENT); |
- codeUnits[dartx._set](1, core.Uri._hexDigits[dartx.codeUnitAt](char[dartx['>>']](4))); |
- codeUnits[dartx._set](2, core.Uri._hexDigits[dartx.codeUnitAt](dart.notNull(char) & 15)); |
+ codeUnits[dartx._set](0, core._PERCENT); |
+ codeUnits[dartx._set](1, core._hexDigits[dartx.codeUnitAt](char[dartx['>>']](4))); |
+ codeUnits[dartx._set](2, core._hexDigits[dartx.codeUnitAt](dart.notNull(char) & 15)); |
} else { |
let flag = 192; |
let encodedBytes = 2; |
@@ -33998,16 +34261,21 @@ core.Uri = class Uri extends core.Object { |
let index = 0; |
while (--encodedBytes >= 0) { |
let byte = (char[dartx['>>']](6 * encodedBytes) & 63 | flag) >>> 0; |
- codeUnits[dartx._set](index, core.Uri._PERCENT); |
- codeUnits[dartx._set](index + 1, core.Uri._hexDigits[dartx.codeUnitAt](byte[dartx['>>']](4))); |
- codeUnits[dartx._set](index + 2, core.Uri._hexDigits[dartx.codeUnitAt](byte & 15)); |
+ codeUnits[dartx._set](index, core._PERCENT); |
+ codeUnits[dartx._set](index + 1, core._hexDigits[dartx.codeUnitAt](byte[dartx['>>']](4))); |
+ codeUnits[dartx._set](index + 2, core._hexDigits[dartx.codeUnitAt](byte & 15)); |
index = index + 3; |
flag = 128; |
} |
} |
return core.String.fromCharCodes(codeUnits); |
} |
- static _normalize(component, start, end, charTable) { |
+ static _normalizeOrSubstring(component, start, end, charTable) { |
+ let l = core._Uri._normalize(component, start, end, charTable); |
+ return l != null ? l : component[dartx.substring](start, end); |
+ } |
+ static _normalize(component, start, end, charTable, opts) { |
+ let escapeDelimiters = opts && 'escapeDelimiters' in opts ? opts.escapeDelimiters : false; |
let buffer = null; |
let sectionStart = start; |
let index = start; |
@@ -34018,8 +34286,8 @@ core.Uri = class Uri extends core.Object { |
} else { |
let replacement = null; |
let sourceLength = null; |
- if (char == core.Uri._PERCENT) { |
- replacement = core.Uri._normalizeEscape(component, index, false); |
+ if (char == core._PERCENT) { |
+ replacement = core._Uri._normalizeEscape(component, index, false); |
if (replacement == null) { |
index = dart.notNull(index) + 3; |
continue; |
@@ -34030,8 +34298,8 @@ core.Uri = class Uri extends core.Object { |
} else { |
sourceLength = 3; |
} |
- } else if (dart.test(core.Uri._isGeneralDelimiter(char))) { |
- core.Uri._fail(component, index, "Invalid character"); |
+ } else if (!dart.test(escapeDelimiters) && dart.test(core._Uri._isGeneralDelimiter(char))) { |
+ core._Uri._fail(component, index, "Invalid character"); |
} else { |
sourceLength = 1; |
if ((dart.notNull(char) & 64512) == 55296) { |
@@ -34043,7 +34311,7 @@ core.Uri = class Uri extends core.Object { |
} |
} |
} |
- replacement = core.Uri._escapeChar(char); |
+ replacement = core._Uri._escapeChar(char); |
} |
if (buffer == null) buffer = new core.StringBuffer(); |
buffer.write(component[dartx.substring](sectionStart, index)); |
@@ -34053,7 +34321,7 @@ core.Uri = class Uri extends core.Object { |
} |
} |
if (buffer == null) { |
- return component[dartx.substring](start, end); |
+ return null; |
} |
if (dart.notNull(sectionStart) < dart.notNull(end)) { |
buffer.write(component[dartx.substring](sectionStart, end)); |
@@ -34061,10 +34329,10 @@ core.Uri = class Uri extends core.Object { |
return dart.toString(buffer); |
} |
static _isSchemeCharacter(ch) { |
- return dart.notNull(ch) < 128 && (dart.notNull(core.Uri._schemeTable[dartx._get](ch[dartx['>>']](4))) & 1 << (dart.notNull(ch) & 15)) != 0; |
+ return dart.notNull(ch) < 128 && (dart.notNull(core._Uri._schemeTable[dartx._get](ch[dartx['>>']](4))) & 1 << (dart.notNull(ch) & 15)) != 0; |
} |
static _isGeneralDelimiter(ch) { |
- return dart.notNull(ch) <= core.Uri._RIGHT_BRACKET && (dart.notNull(core.Uri._genDelimitersTable[dartx._get](ch[dartx['>>']](4))) & 1 << (dart.notNull(ch) & 15)) != 0; |
+ return dart.notNull(ch) <= core._RIGHT_BRACKET && (dart.notNull(core._Uri._genDelimitersTable[dartx._get](ch[dartx['>>']](4))) & 1 << (dart.notNull(ch) & 15)) != 0; |
} |
get isAbsolute() { |
return this.scheme != "" && this.fragment == ""; |
@@ -34083,7 +34351,7 @@ core.Uri = class Uri extends core.Object { |
break; |
} |
let delta = dart.notNull(baseEnd) - dart.notNull(newEnd); |
- if ((delta == 2 || delta == 3) && base[dartx.codeUnitAt](dart.notNull(newEnd) + 1) == core.Uri._DOT && (delta == 2 || base[dartx.codeUnitAt](dart.notNull(newEnd) + 2) == core.Uri._DOT)) { |
+ if ((delta == 2 || delta == 3) && base[dartx.codeUnitAt](dart.notNull(newEnd) + 1) == core._DOT && (delta == 2 || base[dartx.codeUnitAt](dart.notNull(newEnd) + 2) == core._DOT)) { |
break; |
} |
baseEnd = newEnd; |
@@ -34097,7 +34365,7 @@ core.Uri = class Uri extends core.Object { |
return index != -1; |
} |
static _removeDotSegments(path) { |
- if (!dart.test(core.Uri._mayContainDotSegments(path))) return path; |
+ if (!dart.test(core._Uri._mayContainDotSegments(path))) return path; |
dart.assert(path[dartx.isNotEmpty]); |
let output = JSArrayOfString().of([]); |
let appendSlash = false; |
@@ -34120,9 +34388,12 @@ core.Uri = class Uri extends core.Object { |
if (appendSlash) output[dartx.add](""); |
return output[dartx.join]("/"); |
} |
- static _normalizeRelativePath(path) { |
+ static _normalizeRelativePath(path, allowScheme) { |
dart.assert(!dart.test(path[dartx.startsWith]('/'))); |
- if (!dart.test(core.Uri._mayContainDotSegments(path))) return path; |
+ if (!dart.test(core._Uri._mayContainDotSegments(path))) { |
+ if (!dart.test(allowScheme)) path = core._Uri._escapeScheme(path); |
+ return path; |
+ } |
dart.assert(path[dartx.isNotEmpty]); |
let output = JSArrayOfString().of([]); |
let appendSlash = false; |
@@ -34145,8 +34416,23 @@ core.Uri = class Uri extends core.Object { |
return "./"; |
} |
if (appendSlash || output[dartx.last] == '..') output[dartx.add](""); |
+ if (!dart.test(allowScheme)) output[dartx._set](0, core._Uri._escapeScheme(output[dartx._get](0))); |
return output[dartx.join]("/"); |
} |
+ static _escapeScheme(path) { |
+ if (dart.notNull(path[dartx.length]) >= 2 && dart.test(core._Uri._isAlphabeticCharacter(path[dartx.codeUnitAt](0)))) { |
+ for (let i = 1; i < dart.notNull(path[dartx.length]); i++) { |
+ let char = path[dartx.codeUnitAt](i); |
+ if (char == core._COLON) { |
+ return dart.str`${path[dartx.substring](0, i)}%3A${path[dartx.substring](i + 1)}`; |
+ } |
+ if (dart.notNull(char) > 127 || (dart.notNull(core._Uri._schemeTable[dartx._get](char[dartx['>>']](4))) & 1 << (dart.notNull(char) & 15)) == 0) { |
+ break; |
+ } |
+ } |
+ } |
+ return path; |
+ } |
resolve(reference) { |
return this.resolveUri(core.Uri.parse(reference)); |
} |
@@ -34164,7 +34450,7 @@ core.Uri = class Uri extends core.Object { |
targetHost = reference.host; |
targetPort = dart.test(reference.hasPort) ? reference.port : null; |
} |
- targetPath = core.Uri._removeDotSegments(reference.path); |
+ targetPath = core._Uri._removeDotSegments(reference.path); |
if (dart.test(reference.hasQuery)) { |
targetQuery = reference.query; |
} |
@@ -34173,15 +34459,15 @@ core.Uri = class Uri extends core.Object { |
if (dart.test(reference.hasAuthority)) { |
targetUserInfo = reference.userInfo; |
targetHost = reference.host; |
- targetPort = core.Uri._makePort(dart.test(reference.hasPort) ? reference.port : null, targetScheme); |
- targetPath = core.Uri._removeDotSegments(reference.path); |
+ targetPort = core._Uri._makePort(dart.test(reference.hasPort) ? reference.port : null, targetScheme); |
+ targetPath = core._Uri._removeDotSegments(reference.path); |
if (dart.test(reference.hasQuery)) targetQuery = reference.query; |
} else { |
targetUserInfo = this[_userInfo]; |
targetHost = this[_host]; |
targetPort = this[_port]; |
if (reference.path == "") { |
- targetPath = this[_path]; |
+ targetPath = this.path; |
if (dart.test(reference.hasQuery)) { |
targetQuery = reference.query; |
} else { |
@@ -34189,20 +34475,24 @@ core.Uri = class Uri extends core.Object { |
} |
} else { |
if (dart.test(reference.hasAbsolutePath)) { |
- targetPath = core.Uri._removeDotSegments(reference.path); |
+ targetPath = core._Uri._removeDotSegments(reference.path); |
} else { |
if (dart.test(this.hasEmptyPath)) { |
- if (!dart.test(this.hasScheme) && !dart.test(this.hasAuthority)) { |
- targetPath = reference.path; |
+ if (!dart.test(this.hasAuthority)) { |
+ if (!dart.test(this.hasScheme)) { |
+ targetPath = reference.path; |
+ } else { |
+ targetPath = core._Uri._removeDotSegments(reference.path); |
+ } |
} else { |
- targetPath = core.Uri._removeDotSegments("/" + dart.notNull(reference.path)); |
+ targetPath = core._Uri._removeDotSegments("/" + dart.notNull(reference.path)); |
} |
} else { |
- let mergedPath = this[_mergePaths](this[_path], reference.path); |
+ let mergedPath = this[_mergePaths](this.path, reference.path); |
if (dart.test(this.hasScheme) || dart.test(this.hasAuthority) || dart.test(this.hasAbsolutePath)) { |
- targetPath = core.Uri._removeDotSegments(mergedPath); |
+ targetPath = core._Uri._removeDotSegments(mergedPath); |
} else { |
- targetPath = core.Uri._normalizeRelativePath(mergedPath); |
+ targetPath = core._Uri._normalizeRelativePath(mergedPath, dart.test(this.hasScheme) || dart.test(this.hasAuthority)); |
} |
} |
} |
@@ -34211,7 +34501,7 @@ core.Uri = class Uri extends core.Object { |
} |
} |
let fragment = dart.test(reference.hasFragment) ? reference.fragment : null; |
- return new core.Uri._internal(targetScheme, targetUserInfo, targetHost, targetPort, targetPath, targetQuery, fragment); |
+ return new core._Uri._internal(targetScheme, targetUserInfo, targetHost, targetPort, targetPath, targetQuery, fragment); |
} |
get hasScheme() { |
return this.scheme[dartx.isNotEmpty]; |
@@ -34229,18 +34519,21 @@ core.Uri = class Uri extends core.Object { |
return this[_fragment] != null; |
} |
get hasEmptyPath() { |
- return this[_path][dartx.isEmpty]; |
+ return this.path[dartx.isEmpty]; |
} |
get hasAbsolutePath() { |
- return this[_path][dartx.startsWith]('/'); |
+ return this.path[dartx.startsWith]('/'); |
} |
get origin() { |
- if (this.scheme == "" || this[_host] == null || this[_host] == "") { |
+ if (this.scheme == "") { |
dart.throw(new core.StateError(dart.str`Cannot use origin without a scheme: ${this}`)); |
} |
if (this.scheme != "http" && this.scheme != "https") { |
dart.throw(new core.StateError(dart.str`Origin is only applicable schemes http and https: ${this}`)); |
} |
+ if (this[_host] == null || this[_host] == "") { |
+ dart.throw(new core.StateError(dart.str`A ${this.scheme}: URI should have a non-empty host name: ${this}`)); |
+ } |
if (this[_port] == null) return dart.str`${this.scheme}://${this[_host]}`; |
return dart.str`${this.scheme}://${this[_host]}:${this[_port]}`; |
} |
@@ -34255,43 +34548,46 @@ core.Uri = class Uri extends core.Object { |
if (this.fragment != "") { |
dart.throw(new core.UnsupportedError("Cannot extract a file path from a URI with a fragment component")); |
} |
- if (windows == null) windows = core.Uri._isWindows; |
- return dart.test(windows) ? this[_toWindowsFilePath]() : this[_toFilePath](); |
+ if (windows == null) windows = core._Uri._isWindows; |
+ return dart.test(windows) ? core._Uri._toWindowsFilePath(this) : this[_toFilePath](); |
} |
[_toFilePath]() { |
- if (this.host != "") { |
+ if (dart.test(this.hasAuthority) && this.host != "") { |
dart.throw(new core.UnsupportedError("Cannot extract a non-Windows file path from a file URI " + "with an authority")); |
} |
- core.Uri._checkNonWindowsPathReservedCharacters(this.pathSegments, false); |
+ let pathSegments = this.pathSegments; |
+ core._Uri._checkNonWindowsPathReservedCharacters(pathSegments, false); |
let result = new core.StringBuffer(); |
- if (dart.test(this[_isPathAbsolute])) result.write("/"); |
- result.writeAll(this.pathSegments, "/"); |
+ if (dart.test(this.hasAbsolutePath)) result.write("/"); |
+ result.writeAll(pathSegments, "/"); |
return result.toString(); |
} |
- [_toWindowsFilePath]() { |
+ static _toWindowsFilePath(uri) { |
let hasDriveLetter = false; |
- let segments = this.pathSegments; |
- if (dart.notNull(segments[dartx.length]) > 0 && segments[dartx._get](0)[dartx.length] == 2 && segments[dartx._get](0)[dartx.codeUnitAt](1) == core.Uri._COLON) { |
- core.Uri._checkWindowsDriveLetter(segments[dartx._get](0)[dartx.codeUnitAt](0), false); |
- core.Uri._checkWindowsPathReservedCharacters(segments, false, 1); |
+ let segments = uri.pathSegments; |
+ if (dart.notNull(segments[dartx.length]) > 0 && segments[dartx._get](0)[dartx.length] == 2 && segments[dartx._get](0)[dartx.codeUnitAt](1) == core._COLON) { |
+ core._Uri._checkWindowsDriveLetter(segments[dartx._get](0)[dartx.codeUnitAt](0), false); |
+ core._Uri._checkWindowsPathReservedCharacters(segments, false, 1); |
hasDriveLetter = true; |
} else { |
- core.Uri._checkWindowsPathReservedCharacters(segments, false); |
+ core._Uri._checkWindowsPathReservedCharacters(segments, false, 0); |
} |
let result = new core.StringBuffer(); |
- if (dart.test(this[_isPathAbsolute]) && !hasDriveLetter) result.write("\\"); |
- if (this.host != "") { |
- result.write("\\"); |
- result.write(this.host); |
- result.write("\\"); |
+ if (dart.test(uri.hasAbsolutePath) && !hasDriveLetter) result.write("\\"); |
+ if (dart.test(uri.hasAuthority)) { |
+ let host = uri.host; |
+ if (dart.test(host[dartx.isNotEmpty])) { |
+ result.write("\\"); |
+ result.write(host); |
+ result.write("\\"); |
+ } |
} |
result.writeAll(segments, "\\"); |
if (hasDriveLetter && segments[dartx.length] == 1) result.write("\\"); |
return result.toString(); |
} |
get [_isPathAbsolute]() { |
- if (this.path == null || dart.test(this.path[dartx.isEmpty])) return false; |
- return this.path[dartx.startsWith]('/'); |
+ return this.path != null && dart.test(this.path[dartx.startsWith]('/')); |
} |
[_writeAuthority](ss) { |
if (dart.test(this[_userInfo][dartx.isNotEmpty])) { |
@@ -34308,9 +34604,17 @@ core.Uri = class Uri extends core.Object { |
return this.scheme == "data" ? core.UriData.fromUri(this) : null; |
} |
toString() { |
+ let t = this[_text]; |
+ return t == null ? this[_text] = this[_initializeText]() : t; |
+ } |
+ [_initializeText]() { |
+ dart.assert(this[_text] == null); |
let sb = new core.StringBuffer(); |
- core.Uri._addIfNonEmpty(sb, this.scheme, this.scheme, ':'); |
- if (dart.test(this.hasAuthority) || dart.test(this.path[dartx.startsWith]("//")) || this.scheme == "file") { |
+ if (dart.test(this.scheme[dartx.isNotEmpty])) { |
+ sb.write(this.scheme); |
+ sb.write(":"); |
+ } |
+ if (dart.test(this.hasAuthority) || this.scheme == "file") { |
sb.write("//"); |
this[_writeAuthority](sb); |
} |
@@ -34326,58 +34630,16 @@ core.Uri = class Uri extends core.Object { |
return sb.toString(); |
} |
['=='](other) { |
- if (!core.Uri.is(other)) return false; |
- let uri = core.Uri._check(other); |
- return this.scheme == uri.scheme && this.hasAuthority == uri.hasAuthority && this.userInfo == uri.userInfo && this.host == uri.host && this.port == uri.port && this.path == uri.path && this.hasQuery == uri.hasQuery && this.query == uri.query && this.hasFragment == uri.hasFragment && this.fragment == uri.fragment; |
- } |
- get hashCode() { |
- function combine(part, current) { |
- return core.int._check(dart.dsend(dart.dsend(dart.dsend(current, '*', 31), '+', dart.hashCode(part)), '&', 1073741823)); |
- } |
- dart.fn(combine, dynamicAnddynamicToint()); |
- return combine(this.scheme, combine(this.userInfo, combine(this.host, combine(this.port, combine(this.path, combine(this.query, combine(this.fragment, 1))))))); |
- } |
- static _addIfNonEmpty(sb, test, first, second) { |
- if ("" != test) { |
- sb.write(first); |
- sb.write(second); |
+ if (core.identical(this, other)) return true; |
+ if (core.Uri.is(other)) { |
+ let uri = other; |
+ return this.scheme == uri.scheme && this.hasAuthority == uri.hasAuthority && this.userInfo == uri.userInfo && this.host == uri.host && this.port == uri.port && this.path == uri.path && this.hasQuery == uri.hasQuery && this.query == uri.query && this.hasFragment == uri.hasFragment && this.fragment == uri.fragment; |
} |
+ return false; |
} |
- static encodeComponent(component) { |
- return core.Uri._uriEncode(core.Uri._unreserved2396Table, component, convert.UTF8, false); |
- } |
- static encodeQueryComponent(component, opts) { |
- let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
- return core.Uri._uriEncode(core.Uri._unreservedTable, component, encoding, true); |
- } |
- static decodeComponent(encodedComponent) { |
- return core.Uri._uriDecode(encodedComponent, 0, encodedComponent[dartx.length], convert.UTF8, false); |
- } |
- static decodeQueryComponent(encodedComponent, opts) { |
- let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
- return core.Uri._uriDecode(encodedComponent, 0, encodedComponent[dartx.length], encoding, true); |
- } |
- static encodeFull(uri) { |
- return core.Uri._uriEncode(core.Uri._encodeFullTable, uri, convert.UTF8, false); |
- } |
- static decodeFull(uri) { |
- return core.Uri._uriDecode(uri, 0, uri[dartx.length], convert.UTF8, false); |
- } |
- static splitQueryString(query, opts) { |
- let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
- return query[dartx.split]("&")[dartx.fold](MapOfString$String())(dart.map({}, core.String, core.String), dart.fn((map, element) => { |
- let index = element[dartx.indexOf]("="); |
- if (index == -1) { |
- if (element != "") { |
- map[dartx._set](core.Uri.decodeQueryComponent(element, {encoding: encoding}), ""); |
- } |
- } else if (index != 0) { |
- let key = element[dartx.substring](0, index); |
- let value = element[dartx.substring](dart.notNull(index) + 1); |
- map[dartx._set](core.Uri.decodeQueryComponent(key, {encoding: encoding}), core.Uri.decodeQueryComponent(value, {encoding: encoding})); |
- } |
- return map; |
- }, MapOfString$StringAndStringToMapOfString$String())); |
+ get hashCode() { |
+ let t = this[_hashCodeCache]; |
+ return t == null ? this[_hashCodeCache] = dart.hashCode(this.toString()) : t; |
} |
static _createList() { |
return []; |
@@ -34393,22 +34655,20 @@ core.Uri = class Uri extends core.Object { |
let value = null; |
if (start == end) return; |
if (dart.notNull(equalsIndex) < 0) { |
- key = core.Uri._uriDecode(query, start, end, encoding, true); |
+ key = core._Uri._uriDecode(query, start, end, encoding, true); |
value = ""; |
} else { |
- key = core.Uri._uriDecode(query, start, equalsIndex, encoding, true); |
- value = core.Uri._uriDecode(query, dart.notNull(equalsIndex) + 1, end, encoding, true); |
+ key = core._Uri._uriDecode(query, start, equalsIndex, encoding, true); |
+ value = core._Uri._uriDecode(query, dart.notNull(equalsIndex) + 1, end, encoding, true); |
} |
- dart.dsend(result[dartx.putIfAbsent](key, core.Uri._createList), 'add', value); |
+ dart.dsend(result[dartx.putIfAbsent](key, core._Uri._createList), 'add', value); |
} |
dart.fn(parsePair, intAndintAndintTovoid()); |
- let _equals = 61; |
- let _ampersand = 38; |
while (i < dart.notNull(query[dartx.length])) { |
let char = query[dartx.codeUnitAt](i); |
- if (char == _equals) { |
+ if (char == core._EQUALS) { |
if (equalsIndex < 0) equalsIndex = i; |
- } else if (char == _ampersand) { |
+ } else if (char == core._AMPERSAND) { |
parsePair(start, equalsIndex, i); |
start = i + 1; |
equalsIndex = -1; |
@@ -34418,125 +34678,17 @@ core.Uri = class Uri extends core.Object { |
parsePair(start, equalsIndex, i); |
return result; |
} |
- static parseIPv4Address(host) { |
- function error(msg) { |
- dart.throw(new core.FormatException(dart.str`Illegal IPv4 address, ${msg}`)); |
- } |
- dart.fn(error, StringTovoid$()); |
- let bytes = host[dartx.split]('.'); |
- if (bytes[dartx.length] != 4) { |
- error('IPv4 address should contain exactly 4 parts'); |
- } |
- return bytes[dartx.map](core.int)(dart.fn(byteString => { |
- let byte = core.int.parse(byteString); |
- if (dart.notNull(byte) < 0 || dart.notNull(byte) > 255) { |
- error('each part must be in the range of `0..255`'); |
- } |
- return byte; |
- }, StringToint$()))[dartx.toList](); |
- } |
- static parseIPv6Address(host, start, end) { |
- if (start === void 0) start = 0; |
- if (end === void 0) end = null; |
- if (end == null) end = host[dartx.length]; |
- function error(msg, position) { |
- if (position === void 0) position = null; |
- dart.throw(new core.FormatException(dart.str`Illegal IPv6 address, ${msg}`, host, core.int._check(position))); |
- } |
- dart.fn(error, String__Tovoid()); |
- function parseHex(start, end) { |
- if (dart.notNull(end) - dart.notNull(start) > 4) { |
- error('an IPv6 part can only contain a maximum of 4 hex digits', start); |
- } |
- let value = core.int.parse(host[dartx.substring](start, end), {radix: 16}); |
- if (dart.notNull(value) < 0 || dart.notNull(value) > (1 << 16) - 1) { |
- error('each part must be in the range of `0x0..0xFFFF`', start); |
- } |
- return value; |
- } |
- dart.fn(parseHex, intAndintToint()); |
- if (dart.notNull(host[dartx.length]) < 2) error('address is too short'); |
- let parts = JSArrayOfint().of([]); |
- let wildcardSeen = false; |
- let partStart = start; |
- for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
- if (host[dartx.codeUnitAt](i) == core.Uri._COLON) { |
- if (i == start) { |
- i = dart.notNull(i) + 1; |
- if (host[dartx.codeUnitAt](i) != core.Uri._COLON) { |
- error('invalid start colon.', i); |
- } |
- partStart = i; |
- } |
- if (i == partStart) { |
- if (wildcardSeen) { |
- error('only one wildcard `::` is allowed', i); |
- } |
- wildcardSeen = true; |
- parts[dartx.add](-1); |
- } else { |
- parts[dartx.add](parseHex(partStart, i)); |
- } |
- partStart = dart.notNull(i) + 1; |
- } |
- } |
- if (parts[dartx.length] == 0) error('too few parts'); |
- let atEnd = partStart == end; |
- let isLastWildcard = parts[dartx.last] == -1; |
- if (atEnd && !isLastWildcard) { |
- error('expected a part after last `:`', end); |
- } |
- if (!atEnd) { |
- try { |
- parts[dartx.add](parseHex(partStart, end)); |
- } catch (e) { |
- try { |
- let last = core.Uri.parseIPv4Address(host[dartx.substring](partStart, end)); |
- parts[dartx.add]((dart.notNull(last[dartx._get](0)) << 8 | dart.notNull(last[dartx._get](1))) >>> 0); |
- parts[dartx.add]((dart.notNull(last[dartx._get](2)) << 8 | dart.notNull(last[dartx._get](3))) >>> 0); |
- } catch (e) { |
- error('invalid end of IPv6 address.', partStart); |
- } |
- |
- } |
- |
- } |
- if (wildcardSeen) { |
- if (dart.notNull(parts[dartx.length]) > 7) { |
- error('an address with a wildcard must have less than 7 parts'); |
- } |
- } else if (parts[dartx.length] != 8) { |
- error('an address without a wildcard must contain exactly 8 parts'); |
- } |
- let bytes = typed_data.Uint8List.new(16); |
- for (let i = 0, index = 0; i < dart.notNull(parts[dartx.length]); i++) { |
- let value = parts[dartx._get](i); |
- if (value == -1) { |
- let wildCardLength = 9 - dart.notNull(parts[dartx.length]); |
- for (let j = 0; j < wildCardLength; j++) { |
- bytes[dartx._set](index, 0); |
- bytes[dartx._set](index + 1, 0); |
- index = index + 2; |
- } |
- } else { |
- bytes[dartx._set](index, value[dartx['>>']](8)); |
- bytes[dartx._set](index + 1, dart.notNull(value) & 255); |
- index = index + 2; |
- } |
- } |
- return bytes; |
- } |
static _uriEncode(canonicalTable, text, encoding, spaceToPlus) { |
- if (core.identical(encoding, convert.UTF8) && dart.test(core.Uri._needsNoEncoding.hasMatch(text))) { |
+ if (core.identical(encoding, convert.UTF8) && dart.test(core._Uri._needsNoEncoding.hasMatch(text))) { |
return text; |
} |
- let result = new core.StringBuffer(); |
+ let result = new core.StringBuffer(''); |
let bytes = encoding.encode(text); |
for (let i = 0; i < dart.notNull(bytes[dartx.length]); i++) { |
let byte = bytes[dartx._get](i); |
if (dart.notNull(byte) < 128 && (dart.notNull(canonicalTable[dartx._get](byte[dartx['>>']](4))) & 1 << (dart.notNull(byte) & 15)) != 0) { |
result.writeCharCode(byte); |
- } else if (dart.test(spaceToPlus) && byte == core.Uri._SPACE) { |
+ } else if (dart.test(spaceToPlus) && byte == core._SPACE) { |
result.write('+'); |
} else { |
let hexDigits = '0123456789ABCDEF'; |
@@ -34572,7 +34724,7 @@ core.Uri = class Uri extends core.Object { |
let simple = true; |
for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
let codeUnit = text[dartx.codeUnitAt](i); |
- if (dart.notNull(codeUnit) > 127 || codeUnit == core.Uri._PERCENT || dart.test(plusToSpace) && codeUnit == core.Uri._PLUS) { |
+ if (dart.notNull(codeUnit) > 127 || codeUnit == core._PERCENT || dart.test(plusToSpace) && codeUnit == core._PLUS) { |
simple = false; |
break; |
} |
@@ -34591,14 +34743,14 @@ core.Uri = class Uri extends core.Object { |
if (dart.notNull(codeUnit) > 127) { |
dart.throw(new core.ArgumentError("Illegal percent encoding in URI")); |
} |
- if (codeUnit == core.Uri._PERCENT) { |
+ if (codeUnit == core._PERCENT) { |
if (dart.notNull(i) + 3 > dart.notNull(text[dartx.length])) { |
dart.throw(new core.ArgumentError('Truncated URI')); |
} |
- bytes[dartx.add](core.Uri._hexCharPairToByte(text, dart.notNull(i) + 1)); |
+ bytes[dartx.add](core._Uri._hexCharPairToByte(text, dart.notNull(i) + 1)); |
i = dart.notNull(i) + 2; |
- } else if (dart.test(plusToSpace) && codeUnit == core.Uri._PLUS) { |
- bytes[dartx.add](core.Uri._SPACE); |
+ } else if (dart.test(plusToSpace) && codeUnit == core._PLUS) { |
+ bytes[dartx.add](core._SPACE); |
} else { |
bytes[dartx.add](codeUnit); |
} |
@@ -34608,23 +34760,26 @@ core.Uri = class Uri extends core.Object { |
} |
static _isAlphabeticCharacter(codeUnit) { |
let lowerCase = (dart.notNull(codeUnit) | 32) >>> 0; |
- return core.Uri._LOWER_CASE_A <= lowerCase && lowerCase <= core.Uri._LOWER_CASE_Z; |
+ return core._LOWER_CASE_A <= lowerCase && lowerCase <= core._LOWER_CASE_Z; |
} |
static _isUnreservedChar(char) { |
- return dart.notNull(char) < 127 && (dart.notNull(core.Uri._unreservedTable[dartx._get](char[dartx['>>']](4))) & 1 << (dart.notNull(char) & 15)) != 0; |
+ return dart.notNull(char) < 127 && (dart.notNull(core._Uri._unreservedTable[dartx._get](char[dartx['>>']](4))) & 1 << (dart.notNull(char) & 15)) != 0; |
} |
}; |
-dart.defineNamedConstructor(core.Uri, '_internal'); |
-dart.setSignature(core.Uri, { |
+dart.defineNamedConstructor(core._Uri, '_internal'); |
+core._Uri[dart.implements] = () => [core.Uri]; |
+dart.setSignature(core._Uri, { |
fields: () => ({ |
scheme: core.String, |
[_userInfo]: core.String, |
[_host]: core.String, |
[_port]: core.int, |
- [_path]: core.String, |
+ path: core.String, |
[_query]: core.String, |
[_fragment]: core.String, |
[_pathSegments]: ListOfString(), |
+ [_text]: core.String, |
+ [_hashCodeCache]: core.int, |
[_queryParameters]: MapOfString$String(), |
[_queryParameterLists]: MapOfString$ListOfString() |
}), |
@@ -34633,7 +34788,6 @@ dart.setSignature(core.Uri, { |
userInfo: dart.definiteFunctionType(core.String, []), |
host: dart.definiteFunctionType(core.String, []), |
port: dart.definiteFunctionType(core.int, []), |
- path: dart.definiteFunctionType(core.String, []), |
query: dart.definiteFunctionType(core.String, []), |
fragment: dart.definiteFunctionType(core.String, []), |
pathSegments: dart.definiteFunctionType(core.List$(core.String), []), |
@@ -34652,6 +34806,7 @@ dart.setSignature(core.Uri, { |
data: dart.definiteFunctionType(core.UriData, []) |
}), |
methods: () => ({ |
+ isScheme: dart.definiteFunctionType(core.bool, [core.String]), |
replace: dart.definiteFunctionType(core.Uri, [], {scheme: core.String, userInfo: core.String, host: core.String, port: core.int, path: core.String, pathSegments: IterableOfString(), query: core.String, queryParameters: MapOfString$dynamic(), fragment: core.String}), |
removeFragment: dart.definiteFunctionType(core.Uri, []), |
normalizePath: dart.definiteFunctionType(core.Uri, []), |
@@ -34660,12 +34815,12 @@ dart.setSignature(core.Uri, { |
resolveUri: dart.definiteFunctionType(core.Uri, [core.Uri]), |
toFilePath: dart.definiteFunctionType(core.String, [], {windows: core.bool}), |
[_toFilePath]: dart.definiteFunctionType(core.String, []), |
- [_toWindowsFilePath]: dart.definiteFunctionType(core.String, []), |
- [_writeAuthority]: dart.definiteFunctionType(dart.void, [core.StringSink]) |
+ [_writeAuthority]: dart.definiteFunctionType(dart.void, [core.StringSink]), |
+ [_initializeText]: dart.definiteFunctionType(core.String, []) |
}), |
statics: () => ({ |
_defaultPort: dart.definiteFunctionType(core.int, [core.String]), |
- parse: dart.definiteFunctionType(core.Uri, [core.String], [core.int, core.int]), |
+ _compareScheme: dart.definiteFunctionType(core.bool, [core.String, core.String]), |
_fail: dart.definiteFunctionType(dart.void, [core.String, core.int, core.String]), |
_makeHttpUri: dart.definiteFunctionType(core.Uri, [core.String, core.String, core.String, MapOfString$String()]), |
_checkNonWindowsPathReservedCharacters: dart.definiteFunctionType(dart.dynamic, [ListOfString(), core.bool]), |
@@ -34678,85 +34833,50 @@ dart.setSignature(core.Uri, { |
_isRegNameChar: dart.definiteFunctionType(core.bool, [core.int]), |
_normalizeRegName: dart.definiteFunctionType(core.String, [core.String, core.int, core.int]), |
_makeScheme: dart.definiteFunctionType(core.String, [core.String, core.int, core.int]), |
+ _canonicalizeScheme: dart.definiteFunctionType(core.String, [core.String]), |
_makeUserInfo: dart.definiteFunctionType(core.String, [core.String, core.int, core.int]), |
_makePath: dart.definiteFunctionType(core.String, [core.String, core.int, core.int, IterableOfString(), core.String, core.bool]), |
_normalizePath: dart.definiteFunctionType(core.String, [core.String, core.String, core.bool]), |
_makeQuery: dart.definiteFunctionType(core.String, [core.String, core.int, core.int, MapOfString$dynamic()]), |
_makeFragment: dart.definiteFunctionType(core.String, [core.String, core.int, core.int]), |
- _stringOrNullLength: dart.definiteFunctionType(core.int, [core.String]), |
_normalizeEscape: dart.definiteFunctionType(core.String, [core.String, core.int, core.bool]), |
- _parseHexDigit: dart.definiteFunctionType(core.int, [core.int]), |
_escapeChar: dart.definiteFunctionType(core.String, [core.int]), |
- _normalize: dart.definiteFunctionType(core.String, [core.String, core.int, core.int, ListOfint()]), |
+ _normalizeOrSubstring: dart.definiteFunctionType(core.String, [core.String, core.int, core.int, ListOfint()]), |
+ _normalize: dart.definiteFunctionType(core.String, [core.String, core.int, core.int, ListOfint()], {escapeDelimiters: core.bool}), |
_isSchemeCharacter: dart.definiteFunctionType(core.bool, [core.int]), |
_isGeneralDelimiter: dart.definiteFunctionType(core.bool, [core.int]), |
_mayContainDotSegments: dart.definiteFunctionType(core.bool, [core.String]), |
_removeDotSegments: dart.definiteFunctionType(core.String, [core.String]), |
- _normalizeRelativePath: dart.definiteFunctionType(core.String, [core.String]), |
- _addIfNonEmpty: dart.definiteFunctionType(dart.void, [core.StringBuffer, core.String, core.String, core.String]), |
- encodeComponent: dart.definiteFunctionType(core.String, [core.String]), |
- encodeQueryComponent: dart.definiteFunctionType(core.String, [core.String], {encoding: convert.Encoding}), |
- decodeComponent: dart.definiteFunctionType(core.String, [core.String]), |
- decodeQueryComponent: dart.definiteFunctionType(core.String, [core.String], {encoding: convert.Encoding}), |
- encodeFull: dart.definiteFunctionType(core.String, [core.String]), |
- decodeFull: dart.definiteFunctionType(core.String, [core.String]), |
- splitQueryString: dart.definiteFunctionType(core.Map$(core.String, core.String), [core.String], {encoding: convert.Encoding}), |
+ _normalizeRelativePath: dart.definiteFunctionType(core.String, [core.String, core.bool]), |
+ _escapeScheme: dart.definiteFunctionType(core.String, [core.String]), |
+ _toWindowsFilePath: dart.definiteFunctionType(core.String, [core.Uri]), |
_createList: dart.definiteFunctionType(core.List, []), |
_splitQueryStringAll: dart.definiteFunctionType(core.Map, [core.String], {encoding: convert.Encoding}), |
- parseIPv4Address: dart.definiteFunctionType(core.List$(core.int), [core.String]), |
- parseIPv6Address: dart.definiteFunctionType(core.List$(core.int), [core.String], [core.int, core.int]), |
_uriEncode: dart.definiteFunctionType(core.String, [ListOfint(), core.String, convert.Encoding, core.bool]), |
_hexCharPairToByte: dart.definiteFunctionType(core.int, [core.String, core.int]), |
_uriDecode: dart.definiteFunctionType(core.String, [core.String, core.int, core.int, convert.Encoding, core.bool]), |
_isAlphabeticCharacter: dart.definiteFunctionType(core.bool, [core.int]), |
_isUnreservedChar: dart.definiteFunctionType(core.bool, [core.int]) |
}), |
- names: ['_defaultPort', 'parse', '_fail', '_makeHttpUri', '_checkNonWindowsPathReservedCharacters', '_checkWindowsPathReservedCharacters', '_checkWindowsDriveLetter', '_makeFileUri', '_makeWindowsFileUrl', '_makePort', '_makeHost', '_isRegNameChar', '_normalizeRegName', '_makeScheme', '_makeUserInfo', '_makePath', '_normalizePath', '_makeQuery', '_makeFragment', '_stringOrNullLength', '_normalizeEscape', '_parseHexDigit', '_escapeChar', '_normalize', '_isSchemeCharacter', '_isGeneralDelimiter', '_mayContainDotSegments', '_removeDotSegments', '_normalizeRelativePath', '_addIfNonEmpty', 'encodeComponent', 'encodeQueryComponent', 'decodeComponent', 'decodeQueryComponent', 'encodeFull', 'decodeFull', 'splitQueryString', '_createList', '_splitQueryStringAll', 'parseIPv4Address', 'parseIPv6Address', '_uriEncode', '_hexCharPairToByte', '_uriDecode', '_isAlphabeticCharacter', '_isUnreservedChar'] |
-}); |
-core.Uri._SPACE = 32; |
-core.Uri._DOUBLE_QUOTE = 34; |
-core.Uri._NUMBER_SIGN = 35; |
-core.Uri._PERCENT = 37; |
-core.Uri._ASTERISK = 42; |
-core.Uri._PLUS = 43; |
-core.Uri._DOT = 46; |
-core.Uri._SLASH = 47; |
-core.Uri._ZERO = 48; |
-core.Uri._NINE = 57; |
-core.Uri._COLON = 58; |
-core.Uri._LESS = 60; |
-core.Uri._GREATER = 62; |
-core.Uri._QUESTION = 63; |
-core.Uri._AT_SIGN = 64; |
-core.Uri._UPPER_CASE_A = 65; |
-core.Uri._UPPER_CASE_F = 70; |
-core.Uri._UPPER_CASE_Z = 90; |
-core.Uri._LEFT_BRACKET = 91; |
-core.Uri._BACKSLASH = 92; |
-core.Uri._RIGHT_BRACKET = 93; |
-core.Uri._LOWER_CASE_A = 97; |
-core.Uri._LOWER_CASE_F = 102; |
-core.Uri._LOWER_CASE_Z = 122; |
-core.Uri._BAR = 124; |
-core.Uri._hexDigits = "0123456789ABCDEF"; |
-core.Uri._unreservedTable = dart.constList([0, 0, 24576, 1023, 65534, 34815, 65534, 18431], core.int); |
-core.Uri._unreserved2396Table = dart.constList([0, 0, 26498, 1023, 65534, 34815, 65534, 18431], core.int); |
-core.Uri._encodeFullTable = dart.constList([0, 0, 65498, 45055, 65535, 34815, 65534, 18431], core.int); |
-core.Uri._schemeTable = dart.constList([0, 0, 26624, 1023, 65534, 2047, 65534, 2047], core.int); |
-core.Uri._schemeLowerTable = dart.constList([0, 0, 26624, 1023, 0, 0, 65534, 2047], core.int); |
-core.Uri._subDelimitersTable = dart.constList([0, 0, 32722, 11263, 65534, 34815, 65534, 18431], core.int); |
-core.Uri._genDelimitersTable = dart.constList([0, 0, 32776, 33792, 1, 10240, 0, 0], core.int); |
-core.Uri._userinfoTable = dart.constList([0, 0, 32722, 12287, 65534, 34815, 65534, 18431], core.int); |
-core.Uri._regNameTable = dart.constList([0, 0, 32754, 11263, 65534, 34815, 65534, 18431], core.int); |
-core.Uri._pathCharTable = dart.constList([0, 0, 32722, 12287, 65535, 34815, 65534, 18431], core.int); |
-core.Uri._pathCharOrSlashTable = dart.constList([0, 0, 65490, 12287, 65535, 34815, 65534, 18431], core.int); |
-core.Uri._queryCharTable = dart.constList([0, 0, 65490, 45055, 65535, 34815, 65534, 18431], core.int); |
-dart.defineLazy(core.Uri, { |
+ names: ['_defaultPort', '_compareScheme', '_fail', '_makeHttpUri', '_checkNonWindowsPathReservedCharacters', '_checkWindowsPathReservedCharacters', '_checkWindowsDriveLetter', '_makeFileUri', '_makeWindowsFileUrl', '_makePort', '_makeHost', '_isRegNameChar', '_normalizeRegName', '_makeScheme', '_canonicalizeScheme', '_makeUserInfo', '_makePath', '_normalizePath', '_makeQuery', '_makeFragment', '_normalizeEscape', '_escapeChar', '_normalizeOrSubstring', '_normalize', '_isSchemeCharacter', '_isGeneralDelimiter', '_mayContainDotSegments', '_removeDotSegments', '_normalizeRelativePath', '_escapeScheme', '_toWindowsFilePath', '_createList', '_splitQueryStringAll', '_uriEncode', '_hexCharPairToByte', '_uriDecode', '_isAlphabeticCharacter', '_isUnreservedChar'] |
+}); |
+core._Uri._unreservedTable = dart.constList([0, 0, 24576, 1023, 65534, 34815, 65534, 18431], core.int); |
+core._Uri._unreserved2396Table = dart.constList([0, 0, 26498, 1023, 65534, 34815, 65534, 18431], core.int); |
+core._Uri._encodeFullTable = dart.constList([0, 0, 65498, 45055, 65535, 34815, 65534, 18431], core.int); |
+core._Uri._schemeTable = dart.constList([0, 0, 26624, 1023, 65534, 2047, 65534, 2047], core.int); |
+core._Uri._schemeLowerTable = dart.constList([0, 0, 26624, 1023, 0, 0, 65534, 2047], core.int); |
+core._Uri._subDelimitersTable = dart.constList([0, 0, 32722, 11263, 65534, 34815, 65534, 18431], core.int); |
+core._Uri._genDelimitersTable = dart.constList([0, 0, 32776, 33792, 1, 10240, 0, 0], core.int); |
+core._Uri._userinfoTable = dart.constList([0, 0, 32722, 12287, 65534, 34815, 65534, 18431], core.int); |
+core._Uri._regNameTable = dart.constList([0, 0, 32754, 11263, 65534, 34815, 65534, 18431], core.int); |
+core._Uri._pathCharTable = dart.constList([0, 0, 32722, 12287, 65535, 34815, 65534, 18431], core.int); |
+core._Uri._pathCharOrSlashTable = dart.constList([0, 0, 65490, 12287, 65535, 34815, 65534, 18431], core.int); |
+core._Uri._queryCharTable = dart.constList([0, 0, 65490, 45055, 65535, 34815, 65534, 18431], core.int); |
+dart.defineLazy(core._Uri, { |
get _needsNoEncoding() { |
return core.RegExp.new('^[\\-\\.0-9A-Z_a-z~]*$'); |
} |
}); |
-const _text = Symbol('_text'); |
const _separatorIndices = Symbol('_separatorIndices'); |
const _uriCache = Symbol('_uriCache'); |
core.UriData = class UriData extends core.Object { |
@@ -34840,9 +34960,9 @@ core.UriData = class UriData extends core.Object { |
if (dart.notNull(slashIndex) < 0) { |
dart.throw(new core.ArgumentError.value(mimeType, "mimeType", "Invalid MIME type")); |
} |
- buffer.write(core.Uri._uriEncode(core.UriData._tokenCharTable, mimeType[dartx.substring](0, slashIndex), convert.UTF8, false)); |
+ buffer.write(core._Uri._uriEncode(core.UriData._tokenCharTable, mimeType[dartx.substring](0, slashIndex), convert.UTF8, false)); |
buffer.write("/"); |
- buffer.write(core.Uri._uriEncode(core.UriData._tokenCharTable, mimeType[dartx.substring](dart.notNull(slashIndex) + 1), convert.UTF8, false)); |
+ buffer.write(core._Uri._uriEncode(core.UriData._tokenCharTable, mimeType[dartx.substring](dart.notNull(slashIndex) + 1), convert.UTF8, false)); |
} |
if (charsetName != null) { |
if (indices != null) { |
@@ -34850,7 +34970,7 @@ core.UriData = class UriData extends core.Object { |
indices[dartx.add](dart.notNull(buffer.length) + 8); |
} |
buffer.write(";charset="); |
- buffer.write(core.Uri._uriEncode(core.UriData._tokenCharTable, charsetName, convert.UTF8, false)); |
+ buffer.write(core._Uri._uriEncode(core.UriData._tokenCharTable, charsetName, convert.UTF8, false)); |
} |
dart.nullSafe(parameters, _ => _[dartx.forEach](dart.fn((key, value) => { |
if (dart.test(key[dartx.isEmpty])) { |
@@ -34861,17 +34981,17 @@ core.UriData = class UriData extends core.Object { |
} |
if (indices != null) indices[dartx.add](buffer.length); |
buffer.write(';'); |
- buffer.write(core.Uri._uriEncode(core.UriData._tokenCharTable, key, convert.UTF8, false)); |
+ buffer.write(core._Uri._uriEncode(core.UriData._tokenCharTable, key, convert.UTF8, false)); |
if (indices != null) indices[dartx.add](buffer.length); |
buffer.write('='); |
- buffer.write(core.Uri._uriEncode(core.UriData._tokenCharTable, value, convert.UTF8, false)); |
+ buffer.write(core._Uri._uriEncode(core.UriData._tokenCharTable, value, convert.UTF8, false)); |
}, StringAndStringToNull()))); |
} |
static _validateMimeType(mimeType) { |
let slashIndex = -1; |
for (let i = 0; i < dart.notNull(mimeType[dartx.length]); i++) { |
let char = mimeType[dartx.codeUnitAt](i); |
- if (char != core.Uri._SLASH) continue; |
+ if (char != core._SLASH) continue; |
if (slashIndex < 0) { |
slashIndex = i; |
continue; |
@@ -34881,10 +35001,16 @@ core.UriData = class UriData extends core.Object { |
return slashIndex; |
} |
static parse(uri) { |
- if (!dart.test(uri[dartx.startsWith]("data:"))) { |
- dart.throw(new core.FormatException("Does not start with 'data:'", uri, 0)); |
+ if (dart.notNull(uri[dartx.length]) >= 5) { |
+ let dataDelta = core._startsWithData(uri, 0); |
+ if (dataDelta == 0) { |
+ return core.UriData._parse(uri, 5, null); |
+ } |
+ if (dataDelta == 32) { |
+ return core.UriData._parse(uri[dartx.substring](5), 0, null); |
+ } |
} |
- return core.UriData._parse(uri, 5, null); |
+ dart.throw(new core.FormatException("Does not start with 'data:'", uri, 0)); |
} |
get uri() { |
if (this[_uriCache] != null) return this[_uriCache]; |
@@ -34892,20 +35018,20 @@ core.UriData = class UriData extends core.Object { |
let query = null; |
let colonIndex = this[_separatorIndices][dartx._get](0); |
let queryIndex = this[_text][dartx.indexOf]('?', dart.notNull(colonIndex) + 1); |
- let end = null; |
+ let end = this[_text][dartx.length]; |
if (dart.notNull(queryIndex) >= 0) { |
- query = this[_text][dartx.substring](dart.notNull(queryIndex) + 1); |
+ query = core._Uri._normalizeOrSubstring(this[_text], dart.notNull(queryIndex) + 1, end, core._Uri._queryCharTable); |
end = queryIndex; |
} |
- path = this[_text][dartx.substring](dart.notNull(colonIndex) + 1, end); |
- this[_uriCache] = new core.Uri._internal("data", "", null, null, path, query, null); |
+ path = core._Uri._normalizeOrSubstring(this[_text], dart.notNull(colonIndex) + 1, end, core._Uri._pathCharOrSlashTable); |
+ this[_uriCache] = new core._DataUri(this, path, query); |
return this[_uriCache]; |
} |
get mimeType() { |
let start = dart.notNull(this[_separatorIndices][dartx._get](0)) + 1; |
let end = this[_separatorIndices][dartx._get](1); |
if (start == end) return "text/plain"; |
- return core.Uri._uriDecode(this[_text], start, end, convert.UTF8, false); |
+ return core._Uri._uriDecode(this[_text], start, end, convert.UTF8, false); |
} |
get charset() { |
let parameterStart = 1; |
@@ -34917,7 +35043,7 @@ core.UriData = class UriData extends core.Object { |
let keyStart = dart.notNull(this[_separatorIndices][dartx._get](i)) + 1; |
let keyEnd = this[_separatorIndices][dartx._get](i + 1); |
if (keyEnd == keyStart + 7 && dart.test(this[_text][dartx.startsWith]("charset", keyStart))) { |
- return core.Uri._uriDecode(this[_text], dart.notNull(keyEnd) + 1, this[_separatorIndices][dartx._get](i + 2), convert.UTF8, false); |
+ return core._Uri._uriDecode(this[_text], dart.notNull(keyEnd) + 1, this[_separatorIndices][dartx._get](i + 2), convert.UTF8, false); |
} |
} |
return "US-ASCII"; |
@@ -34955,10 +35081,8 @@ core.UriData = class UriData extends core.Object { |
result[dartx._set](index++, codeUnit); |
} else { |
if (i + 2 < dart.notNull(text[dartx.length])) { |
- let digit1 = core.Uri._parseHexDigit(text[dartx.codeUnitAt](i + 1)); |
- let digit2 = core.Uri._parseHexDigit(text[dartx.codeUnitAt](i + 2)); |
- if (dart.notNull(digit1) >= 0 && dart.notNull(digit2) >= 0) { |
- let byte = dart.notNull(digit1) * 16 + dart.notNull(digit2); |
+ let byte = _internal.parseHexByte(text, i + 1); |
+ if (dart.notNull(byte) >= 0) { |
result[dartx._set](index++, byte); |
i = i + 2; |
continue; |
@@ -34985,7 +35109,7 @@ core.UriData = class UriData extends core.Object { |
let converter = convert.BASE64.decoder.fuse(core.String)(encoding.decoder); |
return converter.convert(text[dartx.substring](start)); |
} |
- return core.Uri._uriDecode(text, start, text[dartx.length], encoding, false); |
+ return core._Uri._uriDecode(text, start, text[dartx.length], encoding, false); |
} |
get parameters() { |
let result = dart.map({}, core.String, core.String); |
@@ -34993,8 +35117,8 @@ core.UriData = class UriData extends core.Object { |
let start = dart.notNull(this[_separatorIndices][dartx._get](i - 2)) + 1; |
let equals = this[_separatorIndices][dartx._get](i - 1); |
let end = this[_separatorIndices][dartx._get](i); |
- let key = core.Uri._uriDecode(this[_text], start, equals, convert.UTF8, false); |
- let value = core.Uri._uriDecode(this[_text], dart.notNull(equals) + 1, end, convert.UTF8, false); |
+ let key = core._Uri._uriDecode(this[_text], start, equals, convert.UTF8, false); |
+ let value = core._Uri._uriDecode(this[_text], dart.notNull(equals) + 1, end, convert.UTF8, false); |
result[dartx._set](key, value); |
} |
return result; |
@@ -35047,6 +35171,15 @@ core.UriData = class UriData extends core.Object { |
} |
} |
indices[dartx.add](i); |
+ let isBase64 = indices[dartx.length][dartx.isOdd]; |
+ if (dart.test(isBase64)) { |
+ text = convert.BASE64.normalize(text, dart.notNull(i) + 1, text[dartx.length]); |
+ } else { |
+ let data = core._Uri._normalize(text, dart.notNull(i) + 1, text[dartx.length], core.UriData._uricTable, {escapeDelimiters: true}); |
+ if (data != null) { |
+ text = text[dartx.replaceRange](dart.notNull(i) + 1, text[dartx.length], data); |
+ } |
+ } |
return new core.UriData._(text, indices, sourceUri); |
} |
static _uriEncodeBytes(canonicalTable, bytes, buffer) { |
@@ -35057,9 +35190,9 @@ core.UriData = class UriData extends core.Object { |
if (dart.notNull(byte) < 128 && (dart.notNull(canonicalTable[dartx._get](byte[dartx['>>']](4))) & 1 << (dart.notNull(byte) & 15)) != 0) { |
buffer.writeCharCode(byte); |
} else { |
- buffer.writeCharCode(core.Uri._PERCENT); |
- buffer.writeCharCode(core.Uri._hexDigits[dartx.codeUnitAt](byte[dartx['>>']](4))); |
- buffer.writeCharCode(core.Uri._hexDigits[dartx.codeUnitAt](dart.notNull(byte) & 15)); |
+ buffer.writeCharCode(core._PERCENT); |
+ buffer.writeCharCode(core._hexDigits[dartx.codeUnitAt](byte[dartx['>>']](4))); |
+ buffer.writeCharCode(core._hexDigits[dartx.codeUnitAt](dart.notNull(byte) & 15)); |
} |
} |
if ((dart.notNull(byteOr) & ~255) != 0) { |
@@ -35105,7 +35238,667 @@ dart.setSignature(core.UriData, { |
}); |
core.UriData._noScheme = -1; |
core.UriData._tokenCharTable = dart.constList([0, 0, 27858, 1023, 65534, 51199, 65535, 32767], core.int); |
-core.UriData._uricTable = core.Uri._queryCharTable; |
+core.UriData._uricTable = core._Uri._queryCharTable; |
+core.UriData._base64Table = dart.constList([0, 0, 34816, 1023, 65534, 2047, 65534, 2047], core.int); |
+core._schemeEndIndex = 1; |
+core._hostStartIndex = 2; |
+core._portStartIndex = 3; |
+core._pathStartIndex = 4; |
+core._queryStartIndex = 5; |
+core._fragmentStartIndex = 6; |
+core._notSimpleIndex = 7; |
+core._uriStart = 0; |
+core._nonSimpleEndStates = 14; |
+core._schemeStart = 20; |
+dart.defineLazy(core, { |
+ get _scannerTables() { |
+ return core._createTables(); |
+ } |
+}); |
+core._createTables = function() { |
+ let stateCount = 22; |
+ let schemeOrPath = 1; |
+ let authOrPath = 2; |
+ let authOrPathSlash = 3; |
+ let uinfoOrHost0 = 4; |
+ let uinfoOrHost = 5; |
+ let uinfoOrPort0 = 6; |
+ let uinfoOrPort = 7; |
+ let ipv6Host = 8; |
+ let relPathSeg = 9; |
+ let pathSeg = 10; |
+ let path = 11; |
+ let query = 12; |
+ let fragment = 13; |
+ let schemeOrPathDot = 14; |
+ let schemeOrPathDot2 = 15; |
+ let relPathSegDot = 16; |
+ let relPathSegDot2 = 17; |
+ let pathSegDot = 18; |
+ let pathSegDot2 = 19; |
+ let scheme0 = core._schemeStart; |
+ let scheme = 21; |
+ let schemeEnd = core._schemeEndIndex << 5; |
+ let hostStart = core._hostStartIndex << 5; |
+ let portStart = core._portStartIndex << 5; |
+ let pathStart = core._pathStartIndex << 5; |
+ let queryStart = core._queryStartIndex << 5; |
+ let fragmentStart = core._fragmentStartIndex << 5; |
+ let notSimple = core._notSimpleIndex << 5; |
+ let unreserved = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~"; |
+ let subDelims = "!$&'()*+,;="; |
+ let pchar = dart.str`${unreserved}${subDelims}`; |
+ let tables = ListOfUint8List().generate(stateCount, dart.fn(_ => typed_data.Uint8List.new(96), intToUint8List())); |
+ function build(state, defaultTransition) { |
+ return (() => { |
+ let _ = tables[dartx._get](core.int._check(state)); |
+ _[dartx.fillRange](0, 96, core.int._check(defaultTransition)); |
+ return _; |
+ })(); |
+ } |
+ dart.fn(build, dynamicAnddynamicToUint8List()); |
+ function setChars(target, chars, transition) { |
+ for (let i = 0; i < dart.notNull(chars[dartx.length]); i++) { |
+ let char = chars[dartx.codeUnitAt](i); |
+ target[dartx._set]((dart.notNull(char) ^ 96) >>> 0, transition); |
+ } |
+ } |
+ dart.fn(setChars, Uint8ListAndStringAndintTovoid()); |
+ function setRange(target, range, transition) { |
+ for (let i = range[dartx.codeUnitAt](0), n = range[dartx.codeUnitAt](1); dart.notNull(i) <= dart.notNull(n); i = dart.notNull(i) + 1) { |
+ target[dartx._set]((dart.notNull(i) ^ 96) >>> 0, transition); |
+ } |
+ } |
+ dart.fn(setRange, Uint8ListAndStringAndintTovoid()); |
+ let b = null; |
+ b = build(core._uriStart, (schemeOrPath | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, schemeOrPath); |
+ setChars(typed_data.Uint8List._check(b), ".", schemeOrPathDot); |
+ setChars(typed_data.Uint8List._check(b), ":", (authOrPath | schemeEnd) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", authOrPathSlash); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(schemeOrPathDot, (schemeOrPath | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, schemeOrPath); |
+ setChars(typed_data.Uint8List._check(b), ".", schemeOrPathDot2); |
+ setChars(typed_data.Uint8List._check(b), ':', (authOrPath | schemeEnd) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(schemeOrPathDot2, (schemeOrPath | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, schemeOrPath); |
+ setChars(typed_data.Uint8List._check(b), "%", (schemeOrPath | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), ':', (authOrPath | schemeEnd) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", relPathSeg); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(schemeOrPath, (schemeOrPath | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, schemeOrPath); |
+ setChars(typed_data.Uint8List._check(b), ':', (authOrPath | schemeEnd) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", pathSeg); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(authOrPath, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, (path | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", (authOrPathSlash | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), ".", (pathSegDot | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(authOrPathSlash, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), "/", (uinfoOrHost0 | hostStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), ".", pathSegDot); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(uinfoOrHost0, (uinfoOrHost | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, uinfoOrHost); |
+ setRange(typed_data.Uint8List._check(b), "AZ", (uinfoOrHost | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), ":", (uinfoOrPort0 | portStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "@", (uinfoOrHost0 | hostStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "[", (ipv6Host | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(uinfoOrHost, (uinfoOrHost | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, uinfoOrHost); |
+ setRange(typed_data.Uint8List._check(b), "AZ", (uinfoOrHost | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), ":", (uinfoOrPort0 | portStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "@", (uinfoOrHost0 | hostStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(uinfoOrPort0, (uinfoOrPort | notSimple) >>> 0); |
+ setRange(typed_data.Uint8List._check(b), "19", uinfoOrPort); |
+ setChars(typed_data.Uint8List._check(b), "@", (uinfoOrHost0 | hostStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(uinfoOrPort, (uinfoOrPort | notSimple) >>> 0); |
+ setRange(typed_data.Uint8List._check(b), "09", uinfoOrPort); |
+ setChars(typed_data.Uint8List._check(b), "@", (uinfoOrHost0 | hostStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | pathStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(ipv6Host, ipv6Host); |
+ setChars(typed_data.Uint8List._check(b), "]", uinfoOrHost); |
+ b = build(relPathSeg, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), ".", relPathSegDot); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(relPathSegDot, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), ".", relPathSegDot2); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(relPathSegDot2, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), "/", relPathSeg); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(pathSeg, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), ".", pathSegDot); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(pathSegDot, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), ".", pathSegDot2); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(pathSegDot2, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), "/", (pathSeg | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(path, (path | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, path); |
+ setChars(typed_data.Uint8List._check(b), "/", pathSeg); |
+ setChars(typed_data.Uint8List._check(b), "?", (query | queryStart) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(query, (query | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, query); |
+ setChars(typed_data.Uint8List._check(b), "?", query); |
+ setChars(typed_data.Uint8List._check(b), "#", (fragment | fragmentStart) >>> 0); |
+ b = build(fragment, (fragment | notSimple) >>> 0); |
+ setChars(typed_data.Uint8List._check(b), pchar, fragment); |
+ setChars(typed_data.Uint8List._check(b), "?", fragment); |
+ b = build(scheme0, (scheme | notSimple) >>> 0); |
+ setRange(typed_data.Uint8List._check(b), "az", scheme); |
+ b = build(scheme, (scheme | notSimple) >>> 0); |
+ setRange(typed_data.Uint8List._check(b), "az", scheme); |
+ setRange(typed_data.Uint8List._check(b), "09", scheme); |
+ setChars(typed_data.Uint8List._check(b), "+-.", scheme); |
+ return tables; |
+}; |
+dart.lazyFn(core._createTables, () => VoidToListOfUint8List()); |
+core._scan = function(uri, start, end, state, indices) { |
+ let tables = core._scannerTables; |
+ dart.assert(dart.notNull(end) <= dart.notNull(uri[dartx.length])); |
+ for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
+ let table = tables[dartx._get](state); |
+ let char = (dart.notNull(uri[dartx.codeUnitAt](i)) ^ 96) >>> 0; |
+ if (char > 95) char = 31; |
+ let transition = table[dartx._get](char); |
+ state = dart.notNull(transition) & 31; |
+ indices[dartx._set](transition[dartx['>>']](5), i); |
+ } |
+ return state; |
+}; |
+dart.fn(core._scan, StringAndintAndint__Toint()); |
+const _uri = Symbol('_uri'); |
+const _schemeEnd = Symbol('_schemeEnd'); |
+const _hostStart = Symbol('_hostStart'); |
+const _portStart = Symbol('_portStart'); |
+const _pathStart = Symbol('_pathStart'); |
+const _queryStart = Symbol('_queryStart'); |
+const _fragmentStart = Symbol('_fragmentStart'); |
+const _schemeCache = Symbol('_schemeCache'); |
+const _isFile = Symbol('_isFile'); |
+const _isHttp = Symbol('_isHttp'); |
+const _isHttps = Symbol('_isHttps'); |
+const _isPackage = Symbol('_isPackage'); |
+const _isScheme = Symbol('_isScheme'); |
+let const$52; |
+let const$53; |
+let const$54; |
+const _isPort = Symbol('_isPort'); |
+const _simpleMerge = Symbol('_simpleMerge'); |
+const _toNonSimple = Symbol('_toNonSimple'); |
+core._SimpleUri = class _SimpleUri extends core.Object { |
+ new(uri, schemeEnd, hostStart, portStart, pathStart, queryStart, fragmentStart, schemeCache) { |
+ this[_uri] = uri; |
+ this[_schemeEnd] = schemeEnd; |
+ this[_hostStart] = hostStart; |
+ this[_portStart] = portStart; |
+ this[_pathStart] = pathStart; |
+ this[_queryStart] = queryStart; |
+ this[_fragmentStart] = fragmentStart; |
+ this[_schemeCache] = schemeCache; |
+ this[_hashCodeCache] = null; |
+ } |
+ get hasScheme() { |
+ return dart.notNull(this[_schemeEnd]) > 0; |
+ } |
+ get hasAuthority() { |
+ return dart.notNull(this[_hostStart]) > 0; |
+ } |
+ get hasUserInfo() { |
+ return dart.notNull(this[_hostStart]) > dart.notNull(this[_schemeEnd]) + 4; |
+ } |
+ get hasPort() { |
+ return dart.notNull(this[_hostStart]) > 0 && dart.notNull(this[_portStart]) + 1 < dart.notNull(this[_pathStart]); |
+ } |
+ get hasQuery() { |
+ return dart.notNull(this[_queryStart]) < dart.notNull(this[_fragmentStart]); |
+ } |
+ get hasFragment() { |
+ return dart.notNull(this[_fragmentStart]) < dart.notNull(this[_uri][dartx.length]); |
+ } |
+ get [_isFile]() { |
+ return this[_schemeEnd] == 4 && dart.test(this[_uri][dartx.startsWith]("file")); |
+ } |
+ get [_isHttp]() { |
+ return this[_schemeEnd] == 4 && dart.test(this[_uri][dartx.startsWith]("http")); |
+ } |
+ get [_isHttps]() { |
+ return this[_schemeEnd] == 5 && dart.test(this[_uri][dartx.startsWith]("https")); |
+ } |
+ get [_isPackage]() { |
+ return this[_schemeEnd] == 7 && dart.test(this[_uri][dartx.startsWith]("package")); |
+ } |
+ [_isScheme](scheme) { |
+ return this[_schemeEnd] == scheme[dartx.length] && dart.test(this[_uri][dartx.startsWith](scheme)); |
+ } |
+ get hasAbsolutePath() { |
+ return this[_uri][dartx.startsWith]("/", this[_pathStart]); |
+ } |
+ get hasEmptyPath() { |
+ return this[_pathStart] == this[_queryStart]; |
+ } |
+ get isAbsolute() { |
+ return dart.test(this.hasScheme) && !dart.test(this.hasFragment); |
+ } |
+ isScheme(scheme) { |
+ if (scheme == null || dart.test(scheme[dartx.isEmpty])) return dart.notNull(this[_schemeEnd]) < 0; |
+ if (scheme[dartx.length] != this[_schemeEnd]) return false; |
+ return core._Uri._compareScheme(scheme, this[_uri]); |
+ } |
+ get scheme() { |
+ if (dart.notNull(this[_schemeEnd]) <= 0) return ""; |
+ if (this[_schemeCache] != null) return this[_schemeCache]; |
+ if (dart.test(this[_isHttp])) { |
+ this[_schemeCache] = "http"; |
+ } else if (dart.test(this[_isHttps])) { |
+ this[_schemeCache] = "https"; |
+ } else if (dart.test(this[_isFile])) { |
+ this[_schemeCache] = "file"; |
+ } else if (dart.test(this[_isPackage])) { |
+ this[_schemeCache] = "package"; |
+ } else { |
+ this[_schemeCache] = this[_uri][dartx.substring](0, this[_schemeEnd]); |
+ } |
+ return this[_schemeCache]; |
+ } |
+ get authority() { |
+ return dart.notNull(this[_hostStart]) > 0 ? this[_uri][dartx.substring](dart.notNull(this[_schemeEnd]) + 3, this[_pathStart]) : ""; |
+ } |
+ get userInfo() { |
+ return dart.notNull(this[_hostStart]) > dart.notNull(this[_schemeEnd]) + 3 ? this[_uri][dartx.substring](dart.notNull(this[_schemeEnd]) + 3, dart.notNull(this[_hostStart]) - 1) : ""; |
+ } |
+ get host() { |
+ return dart.notNull(this[_hostStart]) > 0 ? this[_uri][dartx.substring](this[_hostStart], this[_portStart]) : ""; |
+ } |
+ get port() { |
+ if (dart.test(this.hasPort)) return core.int.parse(this[_uri][dartx.substring](dart.notNull(this[_portStart]) + 1, this[_pathStart])); |
+ if (dart.test(this[_isHttp])) return 80; |
+ if (dart.test(this[_isHttps])) return 443; |
+ return 0; |
+ } |
+ get path() { |
+ return this[_uri][dartx.substring](this[_pathStart], this[_queryStart]); |
+ } |
+ get query() { |
+ return dart.notNull(this[_queryStart]) < dart.notNull(this[_fragmentStart]) ? this[_uri][dartx.substring](dart.notNull(this[_queryStart]) + 1, this[_fragmentStart]) : ""; |
+ } |
+ get fragment() { |
+ return dart.notNull(this[_fragmentStart]) < dart.notNull(this[_uri][dartx.length]) ? this[_uri][dartx.substring](dart.notNull(this[_fragmentStart]) + 1) : ""; |
+ } |
+ get origin() { |
+ let isHttp = this[_isHttp]; |
+ if (dart.notNull(this[_schemeEnd]) < 0) { |
+ dart.throw(new core.StateError(dart.str`Cannot use origin without a scheme: ${this}`)); |
+ } |
+ if (!dart.test(isHttp) && !dart.test(this[_isHttps])) { |
+ dart.throw(new core.StateError(dart.str`Origin is only applicable schemes http and https: ${this}`)); |
+ } |
+ if (this[_hostStart] == this[_portStart]) { |
+ dart.throw(new core.StateError(dart.str`A ${this.scheme}: URI should have a non-empty host name: ${this}`)); |
+ } |
+ if (this[_hostStart] == dart.notNull(this[_schemeEnd]) + 3) { |
+ return this[_uri][dartx.substring](0, this[_pathStart]); |
+ } |
+ return dart.notNull(this[_uri][dartx.substring](0, dart.notNull(this[_schemeEnd]) + 3)) + dart.notNull(this[_uri][dartx.substring](this[_hostStart], this[_pathStart])); |
+ } |
+ get pathSegments() { |
+ let start = this[_pathStart]; |
+ let end = this[_queryStart]; |
+ if (dart.test(this[_uri][dartx.startsWith]("/", start))) { |
+ start = dart.notNull(start) + 1; |
+ } |
+ if (start == end) return const$52 || (const$52 = dart.constList([], core.String)); |
+ let parts = JSArrayOfString().of([]); |
+ for (let i = start; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + 1) { |
+ let char = this[_uri][dartx.codeUnitAt](i); |
+ if (char == core._SLASH) { |
+ parts[dartx.add](this[_uri][dartx.substring](start, i)); |
+ start = dart.notNull(i) + 1; |
+ } |
+ } |
+ parts[dartx.add](this[_uri][dartx.substring](start, end)); |
+ return ListOfString().unmodifiable(parts); |
+ } |
+ get queryParameters() { |
+ if (!dart.test(this.hasQuery)) return const$53 || (const$53 = dart.const(dart.map({}, core.String, core.String))); |
+ return new (UnmodifiableMapViewOfString$String())(core.Uri.splitQueryString(this.query)); |
+ } |
+ get queryParametersAll() { |
+ if (!dart.test(this.hasQuery)) return const$54 || (const$54 = dart.const(dart.map({}, core.String, ListOfString()))); |
+ let queryParameterLists = core._Uri._splitQueryStringAll(this.query); |
+ for (let key of queryParameterLists[dartx.keys]) { |
+ queryParameterLists[dartx._set](key, ListOfString().unmodifiable(core.Iterable._check(queryParameterLists[dartx._get](key)))); |
+ } |
+ return MapOfString$ListOfString().unmodifiable(queryParameterLists); |
+ } |
+ [_isPort](port) { |
+ let portDigitStart = dart.notNull(this[_portStart]) + 1; |
+ return portDigitStart + dart.notNull(port[dartx.length]) == this[_pathStart] && dart.test(this[_uri][dartx.startsWith](port, portDigitStart)); |
+ } |
+ normalizePath() { |
+ return this; |
+ } |
+ removeFragment() { |
+ if (!dart.test(this.hasFragment)) return this; |
+ return new core._SimpleUri(this[_uri][dartx.substring](0, this[_fragmentStart]), this[_schemeEnd], this[_hostStart], this[_portStart], this[_pathStart], this[_queryStart], this[_fragmentStart], this[_schemeCache]); |
+ } |
+ replace(opts) { |
+ let scheme = opts && 'scheme' in opts ? opts.scheme : null; |
+ let userInfo = opts && 'userInfo' in opts ? opts.userInfo : null; |
+ let host = opts && 'host' in opts ? opts.host : null; |
+ let port = opts && 'port' in opts ? opts.port : null; |
+ let path = opts && 'path' in opts ? opts.path : null; |
+ let pathSegments = opts && 'pathSegments' in opts ? opts.pathSegments : null; |
+ let query = opts && 'query' in opts ? opts.query : null; |
+ let queryParameters = opts && 'queryParameters' in opts ? opts.queryParameters : null; |
+ let fragment = opts && 'fragment' in opts ? opts.fragment : null; |
+ let schemeChanged = false; |
+ if (scheme != null) { |
+ scheme = core._Uri._makeScheme(scheme, 0, scheme[dartx.length]); |
+ schemeChanged = !dart.test(this[_isScheme](scheme)); |
+ } else { |
+ scheme = this.scheme; |
+ } |
+ let isFile = scheme == "file"; |
+ if (userInfo != null) { |
+ userInfo = core._Uri._makeUserInfo(userInfo, 0, userInfo[dartx.length]); |
+ } else if (dart.notNull(this[_hostStart]) > 0) { |
+ userInfo = this[_uri][dartx.substring](dart.notNull(this[_schemeEnd]) + 3, this[_hostStart]); |
+ } else { |
+ userInfo = ""; |
+ } |
+ if (port != null) { |
+ port = core._Uri._makePort(port, scheme); |
+ } else { |
+ port = dart.test(this.hasPort) ? this.port : null; |
+ if (schemeChanged) { |
+ port = core._Uri._makePort(port, scheme); |
+ } |
+ } |
+ if (host != null) { |
+ host = core._Uri._makeHost(host, 0, host[dartx.length], false); |
+ } else if (dart.notNull(this[_hostStart]) > 0) { |
+ host = this[_uri][dartx.substring](this[_hostStart], this[_portStart]); |
+ } else if (dart.test(userInfo[dartx.isNotEmpty]) || port != null || isFile) { |
+ host = ""; |
+ } |
+ let hasAuthority = host != null; |
+ if (path != null || pathSegments != null) { |
+ path = core._Uri._makePath(path, 0, core._stringOrNullLength(path), pathSegments, scheme, hasAuthority); |
+ } else { |
+ path = this[_uri][dartx.substring](this[_pathStart], this[_queryStart]); |
+ if ((isFile || hasAuthority && !dart.test(path[dartx.isEmpty])) && !dart.test(path[dartx.startsWith]('/'))) { |
+ path = "/" + dart.notNull(path); |
+ } |
+ } |
+ if (query != null || queryParameters != null) { |
+ query = core._Uri._makeQuery(query, 0, core._stringOrNullLength(query), queryParameters); |
+ } else if (dart.notNull(this[_queryStart]) < dart.notNull(this[_fragmentStart])) { |
+ query = this[_uri][dartx.substring](dart.notNull(this[_queryStart]) + 1, this[_fragmentStart]); |
+ } |
+ if (fragment != null) { |
+ fragment = core._Uri._makeFragment(fragment, 0, fragment[dartx.length]); |
+ } else if (dart.notNull(this[_fragmentStart]) < dart.notNull(this[_uri][dartx.length])) { |
+ fragment = this[_uri][dartx.substring](dart.notNull(this[_fragmentStart]) + 1); |
+ } |
+ return new core._Uri._internal(scheme, userInfo, host, port, path, query, fragment); |
+ } |
+ resolve(reference) { |
+ return this.resolveUri(core.Uri.parse(reference)); |
+ } |
+ resolveUri(reference) { |
+ if (core._SimpleUri.is(reference)) { |
+ return this[_simpleMerge](this, reference); |
+ } |
+ return this[_toNonSimple]().resolveUri(reference); |
+ } |
+ [_simpleMerge](base, ref) { |
+ if (dart.test(ref.hasScheme)) return ref; |
+ if (dart.test(ref.hasAuthority)) { |
+ if (!dart.test(base.hasScheme)) return ref; |
+ let isSimple = true; |
+ if (dart.test(base[_isFile])) { |
+ isSimple = !dart.test(ref.hasEmptyPath); |
+ } else if (dart.test(base[_isHttp])) { |
+ isSimple = !dart.test(ref[_isPort]("80")); |
+ } else if (dart.test(base[_isHttps])) { |
+ isSimple = !dart.test(ref[_isPort]("443")); |
+ } |
+ if (isSimple) { |
+ let delta = dart.notNull(base[_schemeEnd]) + 1; |
+ let newUri = dart.notNull(base[_uri][dartx.substring](0, dart.notNull(base[_schemeEnd]) + 1)) + dart.notNull(ref[_uri][dartx.substring](dart.notNull(ref[_schemeEnd]) + 1)); |
+ return new core._SimpleUri(newUri, base[_schemeEnd], dart.notNull(ref[_hostStart]) + delta, dart.notNull(ref[_portStart]) + delta, dart.notNull(ref[_pathStart]) + delta, dart.notNull(ref[_queryStart]) + delta, dart.notNull(ref[_fragmentStart]) + delta, base[_schemeCache]); |
+ } else { |
+ return this[_toNonSimple]().resolveUri(ref); |
+ } |
+ } |
+ if (dart.test(ref.hasEmptyPath)) { |
+ if (dart.test(ref.hasQuery)) { |
+ let delta = dart.notNull(base[_queryStart]) - dart.notNull(ref[_queryStart]); |
+ let newUri = dart.notNull(base[_uri][dartx.substring](0, base[_queryStart])) + dart.notNull(ref[_uri][dartx.substring](ref[_queryStart])); |
+ return new core._SimpleUri(newUri, base[_schemeEnd], base[_hostStart], base[_portStart], base[_pathStart], dart.notNull(ref[_queryStart]) + delta, dart.notNull(ref[_fragmentStart]) + delta, base[_schemeCache]); |
+ } |
+ if (dart.test(ref.hasFragment)) { |
+ let delta = dart.notNull(base[_fragmentStart]) - dart.notNull(ref[_fragmentStart]); |
+ let newUri = dart.notNull(base[_uri][dartx.substring](0, base[_fragmentStart])) + dart.notNull(ref[_uri][dartx.substring](ref[_fragmentStart])); |
+ return new core._SimpleUri(newUri, base[_schemeEnd], base[_hostStart], base[_portStart], base[_pathStart], base[_queryStart], dart.notNull(ref[_fragmentStart]) + delta, base[_schemeCache]); |
+ } |
+ return base.removeFragment(); |
+ } |
+ if (dart.test(ref.hasAbsolutePath)) { |
+ let delta = dart.notNull(base[_pathStart]) - dart.notNull(ref[_pathStart]); |
+ let newUri = dart.notNull(base[_uri][dartx.substring](0, base[_pathStart])) + dart.notNull(ref[_uri][dartx.substring](ref[_pathStart])); |
+ return new core._SimpleUri(newUri, base[_schemeEnd], base[_hostStart], base[_portStart], base[_pathStart], dart.notNull(ref[_queryStart]) + delta, dart.notNull(ref[_fragmentStart]) + delta, base[_schemeCache]); |
+ } |
+ if (dart.test(base.hasEmptyPath) && dart.test(base.hasAuthority)) { |
+ let refStart = ref[_pathStart]; |
+ while (dart.test(ref[_uri][dartx.startsWith]("../", refStart))) { |
+ refStart = dart.notNull(refStart) + 3; |
+ } |
+ let delta = dart.notNull(base[_pathStart]) - dart.notNull(refStart) + 1; |
+ let newUri = dart.str`${base[_uri][dartx.substring](0, base[_pathStart])}/` + dart.str`${ref[_uri][dartx.substring](refStart)}`; |
+ return new core._SimpleUri(newUri, base[_schemeEnd], base[_hostStart], base[_portStart], base[_pathStart], dart.notNull(ref[_queryStart]) + delta, dart.notNull(ref[_fragmentStart]) + delta, base[_schemeCache]); |
+ } |
+ let baseUri = base[_uri]; |
+ let refUri = ref[_uri]; |
+ let baseStart = base[_pathStart]; |
+ let baseEnd = base[_queryStart]; |
+ while (dart.test(baseUri[dartx.startsWith]("../", baseStart))) { |
+ baseStart = dart.notNull(baseStart) + 3; |
+ } |
+ let refStart = ref[_pathStart]; |
+ let refEnd = ref[_queryStart]; |
+ let backCount = 0; |
+ while (dart.notNull(refStart) + 3 <= dart.notNull(refEnd) && dart.test(refUri[dartx.startsWith]("../", refStart))) { |
+ refStart = dart.notNull(refStart) + 3; |
+ backCount = backCount + 1; |
+ } |
+ let insert = ""; |
+ while (dart.notNull(baseEnd) > dart.notNull(baseStart)) { |
+ baseEnd = dart.notNull(baseEnd) - 1; |
+ let char = baseUri[dartx.codeUnitAt](baseEnd); |
+ if (char == core._SLASH) { |
+ insert = "/"; |
+ if (backCount == 0) break; |
+ backCount--; |
+ } |
+ } |
+ if (baseEnd == baseStart && !dart.test(base.hasScheme) && !dart.test(base.hasAbsolutePath)) { |
+ insert = ""; |
+ refStart = dart.notNull(refStart) - backCount * 3; |
+ } |
+ let delta = dart.notNull(baseEnd) - dart.notNull(refStart) + dart.notNull(insert[dartx.length]); |
+ let newUri = dart.str`${base[_uri][dartx.substring](0, baseEnd)}${insert}` + dart.str`${ref[_uri][dartx.substring](refStart)}`; |
+ return new core._SimpleUri(newUri, base[_schemeEnd], base[_hostStart], base[_portStart], base[_pathStart], dart.notNull(ref[_queryStart]) + delta, dart.notNull(ref[_fragmentStart]) + delta, base[_schemeCache]); |
+ } |
+ toFilePath(opts) { |
+ let windows = opts && 'windows' in opts ? opts.windows : null; |
+ if (dart.notNull(this[_schemeEnd]) >= 0 && !dart.test(this[_isFile])) { |
+ dart.throw(new core.UnsupportedError(dart.str`Cannot extract a file path from a ${this.scheme} URI`)); |
+ } |
+ if (dart.notNull(this[_queryStart]) < dart.notNull(this[_uri][dartx.length])) { |
+ if (dart.notNull(this[_queryStart]) < dart.notNull(this[_fragmentStart])) { |
+ dart.throw(new core.UnsupportedError("Cannot extract a file path from a URI with a query component")); |
+ } |
+ dart.throw(new core.UnsupportedError("Cannot extract a file path from a URI with a fragment component")); |
+ } |
+ if (windows == null) windows = core._Uri._isWindows; |
+ return dart.test(windows) ? core._Uri._toWindowsFilePath(this) : this[_toFilePath](); |
+ } |
+ [_toFilePath]() { |
+ if (dart.notNull(this[_hostStart]) < dart.notNull(this[_portStart])) { |
+ dart.throw(new core.UnsupportedError("Cannot extract a non-Windows file path from a file URI " + "with an authority")); |
+ } |
+ return this.path; |
+ } |
+ get data() { |
+ dart.assert(this.scheme != "data"); |
+ return null; |
+ } |
+ get hashCode() { |
+ return (() => { |
+ let t = this[_hashCodeCache]; |
+ return t == null ? this[_hashCodeCache] = dart.hashCode(this[_uri]) : t; |
+ })(); |
+ } |
+ ['=='](other) { |
+ if (core.identical(this, other)) return true; |
+ if (core.Uri.is(other)) return this[_uri] == dart.toString(other); |
+ return false; |
+ } |
+ [_toNonSimple]() { |
+ return new core._Uri._internal(this.scheme, this.userInfo, dart.test(this.hasAuthority) ? this.host : null, dart.test(this.hasPort) ? this.port : null, this.path, dart.test(this.hasQuery) ? this.query : null, dart.test(this.hasFragment) ? this.fragment : null); |
+ } |
+ toString() { |
+ return this[_uri]; |
+ } |
+}; |
+core._SimpleUri[dart.implements] = () => [core.Uri]; |
+dart.setSignature(core._SimpleUri, { |
+ fields: () => ({ |
+ [_uri]: core.String, |
+ [_schemeEnd]: core.int, |
+ [_hostStart]: core.int, |
+ [_portStart]: core.int, |
+ [_pathStart]: core.int, |
+ [_queryStart]: core.int, |
+ [_fragmentStart]: core.int, |
+ [_schemeCache]: core.String, |
+ [_hashCodeCache]: core.int |
+ }), |
+ getters: () => ({ |
+ hasScheme: dart.definiteFunctionType(core.bool, []), |
+ hasAuthority: dart.definiteFunctionType(core.bool, []), |
+ hasUserInfo: dart.definiteFunctionType(core.bool, []), |
+ hasPort: dart.definiteFunctionType(core.bool, []), |
+ hasQuery: dart.definiteFunctionType(core.bool, []), |
+ hasFragment: dart.definiteFunctionType(core.bool, []), |
+ [_isFile]: dart.definiteFunctionType(core.bool, []), |
+ [_isHttp]: dart.definiteFunctionType(core.bool, []), |
+ [_isHttps]: dart.definiteFunctionType(core.bool, []), |
+ [_isPackage]: dart.definiteFunctionType(core.bool, []), |
+ hasAbsolutePath: dart.definiteFunctionType(core.bool, []), |
+ hasEmptyPath: dart.definiteFunctionType(core.bool, []), |
+ isAbsolute: dart.definiteFunctionType(core.bool, []), |
+ scheme: dart.definiteFunctionType(core.String, []), |
+ authority: dart.definiteFunctionType(core.String, []), |
+ userInfo: dart.definiteFunctionType(core.String, []), |
+ host: dart.definiteFunctionType(core.String, []), |
+ port: dart.definiteFunctionType(core.int, []), |
+ path: dart.definiteFunctionType(core.String, []), |
+ query: dart.definiteFunctionType(core.String, []), |
+ fragment: dart.definiteFunctionType(core.String, []), |
+ origin: dart.definiteFunctionType(core.String, []), |
+ pathSegments: dart.definiteFunctionType(core.List$(core.String), []), |
+ queryParameters: dart.definiteFunctionType(core.Map$(core.String, core.String), []), |
+ queryParametersAll: dart.definiteFunctionType(core.Map$(core.String, core.List$(core.String)), []), |
+ data: dart.definiteFunctionType(core.UriData, []) |
+ }), |
+ methods: () => ({ |
+ [_isScheme]: dart.definiteFunctionType(core.bool, [core.String]), |
+ isScheme: dart.definiteFunctionType(core.bool, [core.String]), |
+ [_isPort]: dart.definiteFunctionType(core.bool, [core.String]), |
+ normalizePath: dart.definiteFunctionType(core.Uri, []), |
+ removeFragment: dart.definiteFunctionType(core.Uri, []), |
+ replace: dart.definiteFunctionType(core.Uri, [], {scheme: core.String, userInfo: core.String, host: core.String, port: core.int, path: core.String, pathSegments: IterableOfString(), query: core.String, queryParameters: MapOfString$dynamic(), fragment: core.String}), |
+ resolve: dart.definiteFunctionType(core.Uri, [core.String]), |
+ resolveUri: dart.definiteFunctionType(core.Uri, [core.Uri]), |
+ [_simpleMerge]: dart.definiteFunctionType(core.Uri, [core._SimpleUri, core._SimpleUri]), |
+ toFilePath: dart.definiteFunctionType(core.String, [], {windows: core.bool}), |
+ [_toFilePath]: dart.definiteFunctionType(core.String, []), |
+ '==': dart.definiteFunctionType(core.bool, [core.Object]), |
+ [_toNonSimple]: dart.definiteFunctionType(core.Uri, []) |
+ }) |
+}); |
+const _data$ = Symbol('_data'); |
+core._DataUri = class _DataUri extends core._Uri { |
+ new(data, path, query) { |
+ this[_data$] = data; |
+ super._internal("data", null, null, null, path, query, null); |
+ } |
+ get data() { |
+ return this[_data$]; |
+ } |
+}; |
+dart.setSignature(core._DataUri, { |
+ fields: () => ({[_data$]: core.UriData}) |
+}); |
+core._startsWithData = function(text, start) { |
+ let delta = ((dart.notNull(text[dartx.codeUnitAt](dart.notNull(start) + 4)) ^ core._COLON) >>> 0) * 3; |
+ delta = (delta | dart.notNull(text[dartx.codeUnitAt](start)) ^ 100) >>> 0; |
+ delta = (delta | dart.notNull(text[dartx.codeUnitAt](dart.notNull(start) + 1)) ^ 97) >>> 0; |
+ delta = (delta | dart.notNull(text[dartx.codeUnitAt](dart.notNull(start) + 2)) ^ 116) >>> 0; |
+ delta = (delta | dart.notNull(text[dartx.codeUnitAt](dart.notNull(start) + 3)) ^ 97) >>> 0; |
+ return delta; |
+}; |
+dart.fn(core._startsWithData, StringAndintToint()); |
+core._stringOrNullLength = function(s) { |
+ return s == null ? 0 : s[dartx.length]; |
+}; |
+dart.fn(core._stringOrNullLength, StringToint$()); |
developer.debugger = function(opts) { |
let when = opts && 'when' in opts ? opts.when : true; |
let message = opts && 'message' in opts ? opts.message : null; |
@@ -35135,6 +35928,49 @@ dart.defineLazy(developer, { |
} |
}); |
developer._clockValue = 0; |
+developer._FakeUserTag = class _FakeUserTag extends core.Object { |
+ real(label) { |
+ this.label = label; |
+ } |
+ static new(label) { |
+ let existingTag = developer._FakeUserTag._instances[dartx._get](label); |
+ if (existingTag != null) { |
+ return developer._FakeUserTag._check(existingTag); |
+ } |
+ if (developer._FakeUserTag._instances[dartx.length] == developer.UserTag.MAX_USER_TAGS) { |
+ dart.throw(new core.UnsupportedError(dart.str`UserTag instance limit (${developer.UserTag.MAX_USER_TAGS}) reached.`)); |
+ } |
+ let instance = new developer._FakeUserTag.real(label); |
+ developer._FakeUserTag._instances[dartx._set](label, instance); |
+ return instance; |
+ } |
+ makeCurrent() { |
+ let old = developer._currentTag; |
+ developer._currentTag = this; |
+ return old; |
+ } |
+}; |
+dart.defineNamedConstructor(developer._FakeUserTag, 'real'); |
+developer._FakeUserTag[dart.implements] = () => [developer.UserTag]; |
+dart.setSignature(developer._FakeUserTag, { |
+ fields: () => ({label: core.String}), |
+ methods: () => ({makeCurrent: dart.definiteFunctionType(developer.UserTag, [])}) |
+}); |
+dart.defineLazy(developer._FakeUserTag, { |
+ get _instances() { |
+ return dart.map(); |
+ }, |
+ set _instances(_) {}, |
+ get _defaultTag() { |
+ return developer._FakeUserTag.new('Default'); |
+ } |
+}); |
+dart.defineLazy(developer, { |
+ get _currentTag() { |
+ return developer._FakeUserTag._defaultTag; |
+ }, |
+ set _currentTag(_) {} |
+}); |
const _result = Symbol('_result'); |
const _errorCode = Symbol('_errorCode'); |
const _errorDetail = Symbol('_errorDetail'); |
@@ -35256,7 +36092,7 @@ developer.postEvent = function(eventKind, eventData) { |
dart.fn(developer.postEvent, StringAndMapTovoid()); |
developer._postEvent = function(eventKind, eventData) { |
}; |
-dart.fn(developer._postEvent, StringAndStringTodynamic()); |
+dart.fn(developer._postEvent, StringAndStringTovoid$()); |
developer._lookupExtension = function(method) { |
return developer._extensions[dartx._get](method); |
}; |
@@ -35274,49 +36110,6 @@ developer.UserTag = class UserTag extends core.Object { |
} |
}; |
developer.UserTag.MAX_USER_TAGS = 64; |
-developer._FakeUserTag = class _FakeUserTag extends core.Object { |
- real(label) { |
- this.label = label; |
- } |
- static new(label) { |
- let existingTag = developer._FakeUserTag._instances[dartx._get](label); |
- if (existingTag != null) { |
- return developer._FakeUserTag._check(existingTag); |
- } |
- if (developer._FakeUserTag._instances[dartx.length] == developer.UserTag.MAX_USER_TAGS) { |
- dart.throw(new core.UnsupportedError(dart.str`UserTag instance limit (${developer.UserTag.MAX_USER_TAGS}) reached.`)); |
- } |
- let instance = new developer._FakeUserTag.real(label); |
- developer._FakeUserTag._instances[dartx._set](label, instance); |
- return instance; |
- } |
- makeCurrent() { |
- let old = developer._currentTag; |
- developer._currentTag = this; |
- return old; |
- } |
-}; |
-dart.defineNamedConstructor(developer._FakeUserTag, 'real'); |
-developer._FakeUserTag[dart.implements] = () => [developer.UserTag]; |
-dart.setSignature(developer._FakeUserTag, { |
- fields: () => ({label: core.String}), |
- methods: () => ({makeCurrent: dart.definiteFunctionType(developer.UserTag, [])}) |
-}); |
-dart.defineLazy(developer._FakeUserTag, { |
- get _instances() { |
- return dart.map(); |
- }, |
- set _instances(_) {}, |
- get _defaultTag() { |
- return developer._FakeUserTag.new('Default'); |
- } |
-}); |
-dart.defineLazy(developer, { |
- get _currentTag() { |
- return developer._FakeUserTag._defaultTag; |
- }, |
- set _currentTag(_) {} |
-}); |
developer.getCurrentTag = function() { |
return developer._currentTag; |
}; |
@@ -35749,7 +36542,7 @@ dart.setSignature(developer.ServiceProtocolInfo, { |
developer.Service = class Service extends core.Object { |
static getInfo() { |
return dart.async(function*() { |
- let receivePort = isolate.RawReceivePort.new(); |
+ let receivePort = isolate$.RawReceivePort.new(); |
let uriCompleter = CompleterOfUri().new(); |
receivePort.handler = dart.fn(uri => uriCompleter.complete(uri), UriTovoid()); |
developer._getServerInfo(receivePort.sendPort); |
@@ -35764,7 +36557,7 @@ developer.Service = class Service extends core.Object { |
if (!(typeof enable == 'boolean')) { |
dart.throw(new core.ArgumentError.value(enable, 'enable', 'Must be a bool')); |
} |
- let receivePort = isolate.RawReceivePort.new(); |
+ let receivePort = isolate$.RawReceivePort.new(); |
let uriCompleter = CompleterOfUri().new(); |
receivePort.handler = dart.fn(uri => uriCompleter.complete(uri), UriTovoid()); |
developer._webServerControl(receivePort.sendPort, enable); |
@@ -35773,20 +36566,27 @@ developer.Service = class Service extends core.Object { |
return new developer.ServiceProtocolInfo(uri); |
}, developer.ServiceProtocolInfo, opts); |
} |
+ static getIsolateID(isolate) { |
+ if (!isolate$.Isolate.is(isolate)) { |
+ dart.throw(new core.ArgumentError.value(isolate, 'isolate', 'Must be an Isolate')); |
+ } |
+ return developer._getIsolateIDFromSendPort(isolate.controlPort); |
+ } |
}; |
dart.setSignature(developer.Service, { |
statics: () => ({ |
getInfo: dart.definiteFunctionType(async.Future$(developer.ServiceProtocolInfo), []), |
- controlWebServer: dart.definiteFunctionType(async.Future$(developer.ServiceProtocolInfo), [], {enable: core.bool}) |
+ controlWebServer: dart.definiteFunctionType(async.Future$(developer.ServiceProtocolInfo), [], {enable: core.bool}), |
+ getIsolateID: dart.definiteFunctionType(core.String, [isolate$.Isolate]) |
}), |
- names: ['getInfo', 'controlWebServer'] |
+ names: ['getInfo', 'controlWebServer', 'getIsolateID'] |
}); |
-developer._getServerInfo = function(sp) { |
- sp.send(null); |
+developer._getServerInfo = function(sendPort) { |
+ sendPort.send(null); |
}; |
dart.lazyFn(developer._getServerInfo, () => SendPortTovoid()); |
-developer._webServerControl = function(sp, enable) { |
- sp.send(null); |
+developer._webServerControl = function(sendPort, enable) { |
+ sendPort.send(null); |
}; |
dart.lazyFn(developer._webServerControl, () => SendPortAndboolTovoid()); |
developer._getServiceMajorVersion = function() { |
@@ -35797,6 +36597,10 @@ developer._getServiceMinorVersion = function() { |
return 0; |
}; |
dart.fn(developer._getServiceMinorVersion, VoidToint()); |
+developer._getIsolateIDFromSendPort = function(sendPort) { |
+ return null; |
+}; |
+dart.lazyFn(developer._getIsolateIDFromSendPort, () => SendPortToString()); |
io.BytesBuilder = class BytesBuilder extends core.Object { |
static new(opts) { |
let copy = opts && 'copy' in opts ? opts.copy : true; |
@@ -35807,27 +36611,21 @@ io.BytesBuilder = class BytesBuilder extends core.Object { |
} |
} |
}; |
-const _length$2 = Symbol('_length'); |
const _buffer$ = Symbol('_buffer'); |
-const _pow2roundup = Symbol('_pow2roundup'); |
+const _length$2 = Symbol('_length'); |
+const _grow$ = Symbol('_grow'); |
io._CopyingBytesBuilder = class _CopyingBytesBuilder extends core.Object { |
- new() { |
+ new(initialCapacity) { |
+ if (initialCapacity === void 0) initialCapacity = 0; |
+ this[_buffer$] = dart.notNull(initialCapacity) <= 0 ? io._CopyingBytesBuilder._emptyList : typed_data.Uint8List.new(io._CopyingBytesBuilder._pow2roundup(initialCapacity)); |
this[_length$2] = 0; |
- this[_buffer$] = null; |
} |
add(bytes) { |
let bytesLength = bytes[dartx.length]; |
if (bytesLength == 0) return; |
let required = dart.notNull(this[_length$2]) + dart.notNull(bytesLength); |
- if (this[_buffer$] == null) { |
- let size = this[_pow2roundup](required); |
- size = math.max(core.int)(size, io._CopyingBytesBuilder._INIT_SIZE); |
- this[_buffer$] = typed_data.Uint8List.new(size); |
- } else if (dart.notNull(this[_buffer$][dartx.length]) < required) { |
- let size = dart.notNull(this[_pow2roundup](required)) * 2; |
- let newBuffer = typed_data.Uint8List.new(size); |
- newBuffer[dartx.setRange](0, this[_buffer$][dartx.length], this[_buffer$]); |
- this[_buffer$] = newBuffer; |
+ if (dart.notNull(this[_buffer$][dartx.length]) < required) { |
+ this[_grow$](required); |
} |
dart.assert(dart.notNull(this[_buffer$][dartx.length]) >= required); |
if (typed_data.Uint8List.is(bytes)) { |
@@ -35840,16 +36638,32 @@ io._CopyingBytesBuilder = class _CopyingBytesBuilder extends core.Object { |
this[_length$2] = required; |
} |
addByte(byte) { |
- this.add(JSArrayOfint().of([byte])); |
+ if (this[_buffer$][dartx.length] == this[_length$2]) { |
+ this[_grow$](this[_length$2]); |
+ } |
+ dart.assert(dart.notNull(this[_buffer$][dartx.length]) > dart.notNull(this[_length$2])); |
+ this[_buffer$][dartx._set](this[_length$2], byte); |
+ this[_length$2] = dart.notNull(this[_length$2]) + 1; |
+ } |
+ [_grow$](required) { |
+ let newSize = dart.notNull(required) * 2; |
+ if (dart.notNull(newSize) < io._CopyingBytesBuilder._INIT_SIZE) { |
+ newSize = io._CopyingBytesBuilder._INIT_SIZE; |
+ } else { |
+ newSize = io._CopyingBytesBuilder._pow2roundup(newSize); |
+ } |
+ let newBuffer = typed_data.Uint8List.new(newSize); |
+ newBuffer[dartx.setRange](0, this[_buffer$][dartx.length], this[_buffer$]); |
+ this[_buffer$] = newBuffer; |
} |
takeBytes() { |
- if (this[_buffer$] == null) return typed_data.Uint8List.new(0); |
+ if (this[_length$2] == 0) return io._CopyingBytesBuilder._emptyList; |
let buffer = typed_data.Uint8List.view(this[_buffer$][dartx.buffer], 0, this[_length$2]); |
this.clear(); |
return buffer; |
} |
toBytes() { |
- if (this[_buffer$] == null) return typed_data.Uint8List.new(0); |
+ if (this[_length$2] == 0) return io._CopyingBytesBuilder._emptyList; |
return typed_data.Uint8List.fromList(typed_data.Uint8List.view(this[_buffer$][dartx.buffer], 0, this[_length$2])); |
} |
get length() { |
@@ -35863,9 +36677,10 @@ io._CopyingBytesBuilder = class _CopyingBytesBuilder extends core.Object { |
} |
clear() { |
this[_length$2] = 0; |
- this[_buffer$] = null; |
+ this[_buffer$] = io._CopyingBytesBuilder._emptyList; |
} |
- [_pow2roundup](x) { |
+ static _pow2roundup(x) { |
+ dart.assert(dart.notNull(x) > 0); |
x = dart.notNull(x) - 1; |
x = (dart.notNull(x) | x[dartx['>>']](1)) >>> 0; |
x = (dart.notNull(x) | x[dartx['>>']](2)) >>> 0; |
@@ -35889,33 +36704,48 @@ dart.setSignature(io._CopyingBytesBuilder, { |
methods: () => ({ |
add: dart.definiteFunctionType(dart.void, [ListOfint()]), |
addByte: dart.definiteFunctionType(dart.void, [core.int]), |
+ [_grow$]: dart.definiteFunctionType(dart.void, [core.int]), |
takeBytes: dart.definiteFunctionType(core.List$(core.int), []), |
toBytes: dart.definiteFunctionType(core.List$(core.int), []), |
- clear: dart.definiteFunctionType(dart.void, []), |
- [_pow2roundup]: dart.definiteFunctionType(core.int, [core.int]) |
- }) |
+ clear: dart.definiteFunctionType(dart.void, []) |
+ }), |
+ statics: () => ({_pow2roundup: dart.definiteFunctionType(core.int, [core.int])}), |
+ names: ['_pow2roundup'] |
}); |
io._CopyingBytesBuilder._INIT_SIZE = 1024; |
+dart.defineLazy(io._CopyingBytesBuilder, { |
+ get _emptyList() { |
+ return typed_data.Uint8List.new(0); |
+ } |
+}); |
const _chunks = Symbol('_chunks'); |
io._BytesBuilder = class _BytesBuilder extends core.Object { |
new() { |
- this[_chunks] = JSArrayOfListOfint().of([]); |
+ this[_chunks] = JSArrayOfUint8List().of([]); |
this[_length$2] = 0; |
} |
add(bytes) { |
- if (!typed_data.Uint8List.is(bytes)) { |
- bytes = typed_data.Uint8List.fromList(bytes); |
+ let typedBytes = null; |
+ if (typed_data.Uint8List.is(bytes)) { |
+ typedBytes = bytes; |
+ } else { |
+ typedBytes = typed_data.Uint8List.fromList(bytes); |
} |
- this[_chunks][dartx.add](bytes); |
- this[_length$2] = dart.notNull(this[_length$2]) + dart.notNull(bytes[dartx.length]); |
+ this[_chunks][dartx.add](typedBytes); |
+ this[_length$2] = dart.notNull(this[_length$2]) + dart.notNull(typedBytes[dartx.length]); |
} |
addByte(byte) { |
- this.add(JSArrayOfint().of([byte])); |
+ this[_chunks][dartx.add]((() => { |
+ let _ = typed_data.Uint8List.new(1); |
+ _[dartx._set](0, byte); |
+ return _; |
+ })()); |
+ this[_length$2] = dart.notNull(this[_length$2]) + 1; |
} |
takeBytes() { |
- if (this[_chunks][dartx.length] == 0) return typed_data.Uint8List.new(0); |
+ if (this[_length$2] == 0) return io._CopyingBytesBuilder._emptyList; |
if (this[_chunks][dartx.length] == 1) { |
- let buffer = this[_chunks][dartx.single]; |
+ let buffer = this[_chunks][dartx._get](0); |
this.clear(); |
return buffer; |
} |
@@ -35929,7 +36759,7 @@ io._BytesBuilder = class _BytesBuilder extends core.Object { |
return buffer; |
} |
toBytes() { |
- if (this[_chunks][dartx.length] == 0) return typed_data.Uint8List.new(0); |
+ if (this[_length$2] == 0) return io._CopyingBytesBuilder._emptyList; |
let buffer = typed_data.Uint8List.new(this[_length$2]); |
let offset = 0; |
for (let chunk of this[_chunks]) { |
@@ -35956,7 +36786,7 @@ io._BytesBuilder[dart.implements] = () => [io.BytesBuilder]; |
dart.setSignature(io._BytesBuilder, { |
fields: () => ({ |
[_length$2]: core.int, |
- [_chunks]: ListOfListOfint() |
+ [_chunks]: ListOfUint8List() |
}), |
getters: () => ({ |
length: dart.definiteFunctionType(core.int, []), |
@@ -35987,7 +36817,7 @@ io._exceptionFromResponse = function(response, message, path) { |
switch (dart.dindex(response, io._ERROR_RESPONSE_ERROR_TYPE)) { |
case io._ILLEGAL_ARGUMENT_RESPONSE: |
{ |
- return new core.ArgumentError(); |
+ return new core.ArgumentError(dart.str`${message}: ${path}`); |
} |
case io._OSERROR_RESPONSE: |
{ |
@@ -36050,7 +36880,7 @@ io._BufferAndStart = class _BufferAndStart extends core.Object { |
}; |
dart.setSignature(io._BufferAndStart, { |
fields: () => ({ |
- buffer: core.List, |
+ buffer: ListOfint(), |
start: core.int |
}) |
}); |
@@ -36062,7 +36892,7 @@ io._ensureFastAndSerializableByteData = function(buffer, start, end) { |
let newBuffer = typed_data.Uint8List.new(length); |
let j = start; |
for (let i = 0; i < length; i++) { |
- let value = core.int._check(buffer[dartx._get](j)); |
+ let value = buffer[dartx._get](j); |
if (!(typeof value == 'number')) { |
dart.throw(new core.ArgumentError(dart.str`List element is not an integer at index ${j}`)); |
} |
@@ -36071,7 +36901,7 @@ io._ensureFastAndSerializableByteData = function(buffer, start, end) { |
} |
return new io._BufferAndStart(newBuffer, 0); |
}; |
-dart.fn(io._ensureFastAndSerializableByteData, ListAndintAndintTo_BufferAndStart()); |
+dart.fn(io._ensureFastAndSerializableByteData, ListOfintAndintAndintTo_BufferAndStart()); |
io._IOCrypto = class _IOCrypto extends core.Object { |
static getRandomBytes(count) { |
dart.throw(new core.UnsupportedError("_IOCrypto.getRandomBytes")); |
@@ -36237,13 +37067,13 @@ io._HashBase = class _HashBase extends core.Object { |
} |
close() { |
if (dart.test(this[_digestCalled])) { |
- return ListOfint()._check(this[_resultAsBytes]()); |
+ return this[_resultAsBytes](); |
} |
this[_digestCalled] = true; |
this[_finalizeData](); |
this[_iterate](); |
dart.assert(this[_pendingData][dartx.length] == 0); |
- return ListOfint()._check(this[_resultAsBytes]()); |
+ return this[_resultAsBytes](); |
} |
get blockSize() { |
return dart.notNull(this[_chunkSizeInWords]) * io._BYTES_PER_WORD; |
@@ -36259,9 +37089,9 @@ io._HashBase = class _HashBase extends core.Object { |
return (val[dartx['<<']](mod_shift) & io._MASK_32 | ((dart.notNull(val) & io._MASK_32) >>> 0)[dartx['>>']](32 - mod_shift)) >>> 0; |
} |
[_resultAsBytes]() { |
- let result = []; |
+ let result = JSArrayOfint().of([]); |
for (let i = 0; i < dart.notNull(this[_h][dartx.length]); i++) { |
- result[dartx.addAll](core.Iterable._check(this[_wordToBytes](this[_h][dartx._get](i)))); |
+ result[dartx.addAll](this[_wordToBytes](this[_h][dartx._get](i))); |
} |
return result; |
} |
@@ -36312,11 +37142,11 @@ io._HashBase = class _HashBase extends core.Object { |
let lengthInBits = dart.notNull(this[_lengthInBytes]) * io._BITS_PER_BYTE; |
dart.assert(lengthInBits < dart.notNull(math.pow(2, 32))); |
if (dart.test(this[_bigEndianWords])) { |
- this[_pendingData][dartx.addAll](IterableOfint()._check(this[_wordToBytes](0))); |
- this[_pendingData][dartx.addAll](IterableOfint()._check(this[_wordToBytes]((lengthInBits & io._MASK_32) >>> 0))); |
+ this[_pendingData][dartx.addAll](this[_wordToBytes](0)); |
+ this[_pendingData][dartx.addAll](this[_wordToBytes]((lengthInBits & io._MASK_32) >>> 0)); |
} else { |
- this[_pendingData][dartx.addAll](IterableOfint()._check(this[_wordToBytes]((lengthInBits & io._MASK_32) >>> 0))); |
- this[_pendingData][dartx.addAll](IterableOfint()._check(this[_wordToBytes](0))); |
+ this[_pendingData][dartx.addAll](this[_wordToBytes]((lengthInBits & io._MASK_32) >>> 0)); |
+ this[_pendingData][dartx.addAll](this[_wordToBytes](0)); |
} |
} |
}; |
@@ -36338,9 +37168,9 @@ dart.setSignature(io._HashBase, { |
[_add32]: dart.definiteFunctionType(dart.dynamic, [dart.dynamic, dart.dynamic]), |
[_roundUp]: dart.definiteFunctionType(dart.dynamic, [dart.dynamic, dart.dynamic]), |
[_rotl32]: dart.definiteFunctionType(core.int, [core.int, core.int]), |
- [_resultAsBytes]: dart.definiteFunctionType(dart.dynamic, []), |
+ [_resultAsBytes]: dart.definiteFunctionType(core.List$(core.int), []), |
[_bytesToChunk]: dart.definiteFunctionType(dart.dynamic, [ListOfint(), core.int]), |
- [_wordToBytes]: dart.definiteFunctionType(dart.dynamic, [core.int]), |
+ [_wordToBytes]: dart.definiteFunctionType(core.List$(core.int), [core.int]), |
[_iterate]: dart.definiteFunctionType(dart.dynamic, []), |
[_finalizeData]: dart.definiteFunctionType(dart.dynamic, []) |
}) |
@@ -36622,6 +37452,7 @@ io.ZLibEncoder = class ZLibEncoder extends convert.Converter$(core.List$(core.in |
} |
}; |
dart.addSimpleTypeTests(io.ZLibEncoder); |
+io.ZLibEncoder[dart.implements] = () => [ChunkedConverterOfListOfint$ListOfint$ListOfint$ListOfint()]; |
dart.setSignature(io.ZLibEncoder, { |
fields: () => ({ |
gzip: core.bool, |
@@ -36704,7 +37535,7 @@ const _sink$0 = Symbol('_sink'); |
const _filter$ = Symbol('_filter'); |
const _closed = Symbol('_closed'); |
const _empty = Symbol('_empty'); |
-let const$52; |
+let const$55; |
io._FilterSink = class _FilterSink extends convert.ByteConversionSink { |
new(sink, filter) { |
this[_sink$0] = sink; |
@@ -36723,10 +37554,10 @@ io._FilterSink = class _FilterSink extends convert.ByteConversionSink { |
try { |
this[_empty] = false; |
let bufferAndStart = io._ensureFastAndSerializableByteData(data, start, end); |
- this[_filter$].process(ListOfint()._check(bufferAndStart.buffer), bufferAndStart.start, dart.notNull(end) - (dart.notNull(start) - dart.notNull(bufferAndStart.start))); |
+ this[_filter$].process(bufferAndStart.buffer, bufferAndStart.start, dart.notNull(end) - (dart.notNull(start) - dart.notNull(bufferAndStart.start))); |
let out = null; |
while ((out = this[_filter$].processed({flush: false})) != null) { |
- this[_sink$0].add(ListOfint()._check(out)); |
+ this[_sink$0].add(out); |
} |
} catch (e) { |
this[_closed] = true; |
@@ -36737,11 +37568,11 @@ io._FilterSink = class _FilterSink extends convert.ByteConversionSink { |
} |
close() { |
if (dart.test(this[_closed])) return; |
- if (dart.test(this[_empty])) this[_filter$].process(const$52 || (const$52 = dart.constList([], core.int)), 0, 0); |
+ if (dart.test(this[_empty])) this[_filter$].process(const$55 || (const$55 = dart.constList([], core.int)), 0, 0); |
try { |
let out = null; |
while ((out = this[_filter$].processed({end: true})) != null) { |
- this[_sink$0].add(ListOfint()._check(out)); |
+ this[_sink$0].add(out); |
} |
} catch (e) { |
this[_closed] = true; |
@@ -36808,9 +37639,9 @@ io._validateZLibMemLevel = function(memLevel) { |
} |
}; |
dart.fn(io._validateZLibMemLevel, intTovoid()); |
-let const$53; |
+let const$56; |
io._validateZLibStrategy = function(strategy) { |
- let strategies = const$53 || (const$53 = dart.constList([io.ZLibOption.STRATEGY_FILTERED, io.ZLibOption.STRATEGY_HUFFMAN_ONLY, io.ZLibOption.STRATEGY_RLE, io.ZLibOption.STRATEGY_FIXED, io.ZLibOption.STRATEGY_DEFAULT], core.int)); |
+ let strategies = const$56 || (const$56 = dart.constList([io.ZLibOption.STRATEGY_FILTERED, io.ZLibOption.STRATEGY_HUFFMAN_ONLY, io.ZLibOption.STRATEGY_RLE, io.ZLibOption.STRATEGY_FIXED, io.ZLibOption.STRATEGY_DEFAULT], core.int)); |
if (strategies[dartx.indexOf](strategy) == -1) { |
dart.throw(new core.ArgumentError("Unsupported 'strategy'")); |
} |
@@ -36840,7 +37671,6 @@ dart.setSignature(io.Directory, { |
const _isErrorResponse = Symbol('_isErrorResponse'); |
const _exceptionOrErrorFromResponse = Symbol('_exceptionOrErrorFromResponse'); |
const _absolutePath = Symbol('_absolutePath'); |
-const _computeExistingIndex = Symbol('_computeExistingIndex'); |
const _delete = Symbol('_delete'); |
const _deleteSync = Symbol('_deleteSync'); |
const _type = Symbol('_type'); |
@@ -36861,6 +37691,12 @@ io.FileSystemEntity = class FileSystemEntity extends core.Object { |
io.FileSystemEntity._throwIfError(result, "Cannot resolve symbolic links", this.path); |
return core.String._check(result); |
} |
+ stat() { |
+ return io.FileStat.stat(this.path); |
+ } |
+ statSync() { |
+ return io.FileStat.statSync(this.path); |
+ } |
delete(opts) { |
let recursive = opts && 'recursive' in opts ? opts.recursive : false; |
return this[_delete]({recursive: recursive}); |
@@ -37024,6 +37860,8 @@ dart.setSignature(io.FileSystemEntity, { |
methods: () => ({ |
resolveSymbolicLinks: dart.definiteFunctionType(async.Future$(core.String), []), |
resolveSymbolicLinksSync: dart.definiteFunctionType(core.String, []), |
+ stat: dart.definiteFunctionType(async.Future$(io.FileStat), []), |
+ statSync: dart.definiteFunctionType(io.FileStat, []), |
delete: dart.definiteFunctionType(async.Future$(io.FileSystemEntity), [], {recursive: core.bool}), |
deleteSync: dart.definiteFunctionType(dart.void, [], {recursive: core.bool}), |
watch: dart.definiteFunctionType(async.Stream$(io.FileSystemEvent), [], {events: core.int, recursive: core.bool}) |
@@ -37129,33 +37967,6 @@ io._Directory = class _Directory extends io.FileSystemEntity { |
get absolute() { |
return io.Directory.new(this[_absolutePath]); |
} |
- stat() { |
- return io.FileStat.stat(this.path); |
- } |
- statSync() { |
- return io.FileStat.statSync(this.path); |
- } |
- [_computeExistingIndex](dirsToCreate) { |
- let future = null; |
- let notFound = dirsToCreate[dartx.length]; |
- for (let i = 0; i < dart.notNull(dirsToCreate[dartx.length]); i++) { |
- if (future == null) { |
- future = dart.dsend(dart.dsend(dirsToCreate[dartx._get](i), 'exists'), 'then', dart.fn(e => dart.test(e) ? i : notFound, dynamicToint())); |
- } else { |
- future = dart.dsend(future, 'then', dart.fn(index => { |
- if (!dart.equals(index, notFound)) { |
- return async.Future.value(index); |
- } |
- return dart.dsend(dart.dsend(dirsToCreate[dartx._get](i), 'exists'), 'then', dart.fn(e => dart.test(e) ? i : notFound, dynamicToint())); |
- }, dynamicTodynamic$())); |
- } |
- } |
- if (future == null) { |
- return FutureOfint().value(notFound); |
- } else { |
- return FutureOfint()._check(future); |
- } |
- } |
create(opts) { |
let recursive = opts && 'recursive' in opts ? opts.recursive : false; |
if (dart.test(recursive)) { |
@@ -37266,7 +38077,7 @@ io._Directory = class _Directory extends io.FileSystemEntity { |
list(opts) { |
let recursive = opts && 'recursive' in opts ? opts.recursive : false; |
let followLinks = opts && 'followLinks' in opts ? opts.followLinks : true; |
- return StreamOfFileSystemEntity()._check(new io._AsyncDirectoryLister(io.FileSystemEntity._ensureTrailingPathSeparators(this.path), recursive, followLinks).stream); |
+ return new io._AsyncDirectoryLister(io.FileSystemEntity._ensureTrailingPathSeparators(this.path), recursive, followLinks).stream; |
} |
listSync(opts) { |
let recursive = opts && 'recursive' in opts ? opts.recursive : false; |
@@ -37310,9 +38121,6 @@ dart.setSignature(io._Directory, { |
methods: () => ({ |
exists: dart.definiteFunctionType(async.Future$(core.bool), []), |
existsSync: dart.definiteFunctionType(core.bool, []), |
- stat: dart.definiteFunctionType(async.Future$(io.FileStat), []), |
- statSync: dart.definiteFunctionType(io.FileStat, []), |
- [_computeExistingIndex]: dart.definiteFunctionType(async.Future$(core.int), [core.List]), |
create: dart.definiteFunctionType(async.Future$(io.Directory), [], {recursive: core.bool}), |
createSync: dart.definiteFunctionType(dart.void, [], {recursive: core.bool}), |
createTemp: dart.definiteFunctionType(async.Future$(io.Directory), [], [core.String]), |
@@ -37358,7 +38166,7 @@ io._AsyncDirectoryLister = class _AsyncDirectoryLister extends core.Object { |
this.nextRunning = false; |
this.closed = false; |
this[_ops] = null; |
- this.controller = async.StreamController.new({onListen: dart.bind(this, 'onListen'), onResume: dart.bind(this, 'onResume'), onCancel: dart.bind(this, 'onCancel'), sync: true}); |
+ this.controller = StreamControllerOfFileSystemEntity().new({onListen: dart.bind(this, 'onListen'), onResume: dart.bind(this, 'onResume'), onCancel: dart.bind(this, 'onCancel'), sync: true}); |
} |
[_pointer]() { |
return this[_ops] == null ? null : this[_ops].getPointer(); |
@@ -37485,14 +38293,14 @@ dart.setSignature(io._AsyncDirectoryLister, { |
path: core.String, |
recursive: core.bool, |
followLinks: core.bool, |
- controller: async.StreamController, |
+ controller: StreamControllerOfFileSystemEntity(), |
canceled: core.bool, |
nextRunning: core.bool, |
closed: core.bool, |
[_ops]: io._AsyncDirectoryListerOps, |
closeCompleter: async.Completer |
}), |
- getters: () => ({stream: dart.definiteFunctionType(async.Stream, [])}), |
+ getters: () => ({stream: dart.definiteFunctionType(async.Stream$(io.FileSystemEntity), [])}), |
methods: () => ({ |
[_pointer]: dart.definiteFunctionType(core.int, []), |
onListen: dart.definiteFunctionType(dart.void, []), |
@@ -37519,7 +38327,7 @@ io._EventHandler = class _EventHandler extends core.Object { |
} |
}; |
dart.setSignature(io._EventHandler, { |
- statics: () => ({_sendData: dart.definiteFunctionType(dart.void, [core.Object, isolate.SendPort, core.int])}), |
+ statics: () => ({_sendData: dart.definiteFunctionType(dart.void, [core.Object, isolate$.SendPort, core.int])}), |
names: ['_sendData'] |
}); |
const _mode = Symbol('_mode'); |
@@ -37561,7 +38369,9 @@ io.FileLock = class FileLock extends core.Object { |
toString() { |
return { |
0: "FileLock.SHARED", |
- 1: "FileLock.EXCLUSIVE" |
+ 1: "FileLock.EXCLUSIVE", |
+ 2: "FileLock.BLOCKING_SHARED", |
+ 3: "FileLock.BLOCKING_EXCLUSIVE" |
}[this.index]; |
} |
}; |
@@ -37570,7 +38380,9 @@ dart.setSignature(io.FileLock, { |
}); |
dart.defineEnumValues(io.FileLock, [ |
'SHARED', |
- 'EXCLUSIVE' |
+ 'EXCLUSIVE', |
+ 'BLOCKING_SHARED', |
+ 'BLOCKING_EXCLUSIVE' |
]); |
io.File = class File extends core.Object { |
static new(path) { |
@@ -37623,9 +38435,9 @@ dart.setSignature(io.FileSystemException, { |
}); |
io._BLOCK_SIZE = 64 * 1024; |
const _closeCompleter = Symbol('_closeCompleter'); |
-const _path$ = Symbol('_path'); |
+const _path = Symbol('_path'); |
const _position$0 = Symbol('_position'); |
-const _end$0 = Symbol('_end'); |
+const _end$ = Symbol('_end'); |
const _controller$0 = Symbol('_controller'); |
const _openedFile = Symbol('_openedFile'); |
const _unsubscribed = Symbol('_unsubscribed'); |
@@ -37638,9 +38450,9 @@ const _closeFile = Symbol('_closeFile'); |
io._FileStream = class _FileStream extends async.Stream$(core.List$(core.int)) { |
new(path, position, end) { |
this[_closeCompleter] = async.Completer.new(); |
- this[_path$] = path; |
+ this[_path] = path; |
this[_position$0] = position; |
- this[_end$0] = end; |
+ this[_end$] = end; |
this[_controller$0] = null; |
this[_openedFile] = null; |
this[_unsubscribed] = false; |
@@ -37654,9 +38466,9 @@ io._FileStream = class _FileStream extends async.Stream$(core.List$(core.int)) { |
this[_closeCompleter] = async.Completer.new(); |
this[_position$0] = 0; |
this[_controller$0] = null; |
- this[_path$] = null; |
+ this[_path] = null; |
this[_openedFile] = null; |
- this[_end$0] = null; |
+ this[_end$] = null; |
this[_unsubscribed] = false; |
this[_readInProgress] = true; |
this[_closed] = false; |
@@ -37697,12 +38509,12 @@ io._FileStream = class _FileStream extends async.Stream$(core.List$(core.int)) { |
} |
this[_readInProgress] = true; |
let readBytes = io._BLOCK_SIZE; |
- if (this[_end$0] != null) { |
- readBytes = math.min(core.int)(readBytes, dart.notNull(this[_end$0]) - dart.notNull(this[_position$0])); |
+ if (this[_end$] != null) { |
+ readBytes = math.min(core.int)(readBytes, dart.notNull(this[_end$]) - dart.notNull(this[_position$0])); |
if (dart.notNull(readBytes) < 0) { |
this[_readInProgress] = false; |
if (!dart.test(this[_unsubscribed])) { |
- this[_controller$0].addError(new core.RangeError(dart.str`Bad end position: ${this[_end$0]}`)); |
+ this[_controller$0].addError(new core.RangeError(dart.str`Bad end position: ${this[_end$]}`)); |
this[_closeFile](); |
this[_unsubscribed] = true; |
} |
@@ -37716,7 +38528,7 @@ io._FileStream = class _FileStream extends async.Stream$(core.List$(core.int)) { |
return; |
} |
this[_position$0] = dart.notNull(this[_position$0]) + dart.notNull(block[dartx.length]); |
- if (dart.notNull(block[dartx.length]) < dart.notNull(readBytes) || this[_end$0] != null && this[_position$0] == this[_end$0]) { |
+ if (dart.notNull(block[dartx.length]) < dart.notNull(readBytes) || this[_end$] != null && this[_position$0] == this[_end$]) { |
this[_atEnd] = true; |
} |
if (!dart.test(this[_atEnd]) && !dart.test(this[_controller$0].isPaused)) { |
@@ -37765,8 +38577,8 @@ io._FileStream = class _FileStream extends async.Stream$(core.List$(core.int)) { |
this[_closeCompleter].complete(); |
}).bind(this); |
dart.fn(openFailed, dynamicAnddynamicTovoid$()); |
- if (this[_path$] != null) { |
- io.File.new(this[_path$]).open({mode: io.FileMode.READ}).then(dart.void)(onOpenFile, {onError: openFailed}); |
+ if (this[_path] != null) { |
+ io.File.new(this[_path]).open({mode: io.FileMode.READ}).then(dart.void)(onOpenFile, {onError: openFailed}); |
} else { |
try { |
onOpenFile(io._File._openStdioSync(0)); |
@@ -37783,10 +38595,10 @@ dart.defineNamedConstructor(io._FileStream, 'forStdin'); |
dart.setSignature(io._FileStream, { |
fields: () => ({ |
[_controller$0]: StreamControllerOfListOfint(), |
- [_path$]: core.String, |
+ [_path]: core.String, |
[_openedFile]: io.RandomAccessFile, |
[_position$0]: core.int, |
- [_end$0]: core.int, |
+ [_end$]: core.int, |
[_closeCompleter]: async.Completer, |
[_unsubscribed]: core.bool, |
[_readInProgress]: core.bool, |
@@ -37858,8 +38670,8 @@ dart.setSignature(io._FileStreamConsumer, { |
}) |
}); |
const _tryDecode = Symbol('_tryDecode'); |
-let const$54; |
-let const$55; |
+let const$57; |
+let const$58; |
io._File = class _File extends io.FileSystemEntity { |
new(path) { |
this.path = path; |
@@ -37886,12 +38698,6 @@ io._File = class _File extends io.FileSystemEntity { |
get absolute() { |
return io.File.new(this[_absolutePath]); |
} |
- stat() { |
- return io.FileStat.stat(this.path); |
- } |
- statSync() { |
- return io.FileStat.statSync(this.path); |
- } |
create(opts) { |
let recursive = opts && 'recursive' in opts ? opts.recursive : false; |
let result = dart.test(recursive) ? this.parent.create({recursive: true}) : async.Future.value(null); |
@@ -38008,6 +38814,41 @@ io._File = class _File extends io.FileSystemEntity { |
io._File.throwIfError(result, "Cannot retrieve length of file", this.path); |
return core.int._check(result); |
} |
+ lastAccessed() { |
+ return io._IOService._dispatch(io._FILE_LAST_ACCESSED, JSArrayOfString().of([this.path])).then(core.DateTime)(dart.fn(response => { |
+ if (dart.test(io._isErrorResponse(response))) { |
+ dart.throw(io._exceptionFromResponse(response, "Cannot retrieve access time", this.path)); |
+ } |
+ return new core.DateTime.fromMillisecondsSinceEpoch(core.int._check(response)); |
+ }, dynamicToDateTime())); |
+ } |
+ static _lastAccessed(path) { |
+ dart.throw(new core.UnsupportedError("File._lastAccessed")); |
+ } |
+ lastAccessedSync() { |
+ let ms = io._File._lastAccessed(this.path); |
+ io._File.throwIfError(ms, "Cannot retrieve access time", this.path); |
+ return new core.DateTime.fromMillisecondsSinceEpoch(core.int._check(ms)); |
+ } |
+ setLastAccessed(time) { |
+ let millis = time.millisecondsSinceEpoch; |
+ return io._IOService._dispatch(io._FILE_SET_LAST_ACCESSED, JSArrayOfObject().of([this.path, millis])).then(dart.dynamic)(dart.fn(response => { |
+ if (dart.test(io._isErrorResponse(response))) { |
+ dart.throw(io._exceptionFromResponse(response, "Cannot set access time", this.path)); |
+ } |
+ return null; |
+ }, dynamicToNull$())); |
+ } |
+ static _setLastAccessed(path, millis) { |
+ dart.throw(new core.UnsupportedError("File._setLastAccessed")); |
+ } |
+ setLastAccessedSync(time) { |
+ let millis = time.millisecondsSinceEpoch; |
+ let result = io._File._setLastAccessed(this.path, millis); |
+ if (io.OSError.is(result)) { |
+ dart.throw(new io.FileSystemException("Failed to set file access time", this.path, result)); |
+ } |
+ } |
lastModified() { |
return io._IOService._dispatch(io._FILE_LAST_MODIFIED, JSArrayOfString().of([this.path])).then(core.DateTime)(dart.fn(response => { |
if (dart.test(io._isErrorResponse(response))) { |
@@ -38024,6 +38865,25 @@ io._File = class _File extends io.FileSystemEntity { |
io._File.throwIfError(ms, "Cannot retrieve modification time", this.path); |
return new core.DateTime.fromMillisecondsSinceEpoch(core.int._check(ms)); |
} |
+ setLastModified(time) { |
+ let millis = time.millisecondsSinceEpoch; |
+ return io._IOService._dispatch(io._FILE_SET_LAST_MODIFIED, JSArrayOfObject().of([this.path, millis])).then(dart.dynamic)(dart.fn(response => { |
+ if (dart.test(io._isErrorResponse(response))) { |
+ dart.throw(io._exceptionFromResponse(response, "Cannot set modification time", this.path)); |
+ } |
+ return null; |
+ }, dynamicToNull$())); |
+ } |
+ static _setLastModified(path, millis) { |
+ dart.throw(new core.UnsupportedError("File._setLastModified")); |
+ } |
+ setLastModifiedSync(time) { |
+ let millis = time.millisecondsSinceEpoch; |
+ let result = io._File._setLastModified(this.path, millis); |
+ if (io.OSError.is(result)) { |
+ dart.throw(new io.FileSystemException("Failed to set file modification time", this.path, result)); |
+ } |
+ } |
static _open(path, mode) { |
dart.throw(new core.UnsupportedError("File._open")); |
} |
@@ -38063,22 +38923,22 @@ io._File = class _File extends io.FileSystemEntity { |
readAsBytes() { |
function readDataChunked(file) { |
let builder = io.BytesBuilder.new({copy: false}); |
- let completer = async.Completer.new(); |
+ let completer = CompleterOfListOfint().new(); |
function read() { |
- dart.dsend(dart.dsend(file, 'read', io._BLOCK_SIZE), 'then', dart.fn(data => { |
- if (dart.test(dart.dsend(dart.dload(data, 'length'), '>', 0))) { |
- builder.add(ListOfint()._check(data)); |
+ file.read(io._BLOCK_SIZE).then(dart.dynamic)(dart.fn(data => { |
+ if (dart.notNull(data[dartx.length]) > 0) { |
+ builder.add(data); |
read(); |
} else { |
completer.complete(builder.takeBytes()); |
} |
- }, dynamicToNull$()), {onError: dart.bind(completer, 'completeError')}); |
+ }, ListOfintToNull()), {onError: dart.bind(completer, 'completeError')}); |
} |
dart.fn(read, VoidTovoid$()); |
read(); |
- return FutureOfListOfint()._check(completer.future); |
+ return completer.future; |
} |
- dart.fn(readDataChunked, dynamicToFutureOfListOfint()); |
+ dart.fn(readDataChunked, RandomAccessFileToFutureOfListOfint()); |
return this.open().then(ListOfint())(dart.fn(file => file.length().then(ListOfint())(dart.fn(length => { |
if (length == 0) { |
return readDataChunked(file); |
@@ -38095,13 +38955,13 @@ io._File = class _File extends io.FileSystemEntity { |
let builder = io.BytesBuilder.new({copy: false}); |
do { |
data = opened.readSync(io._BLOCK_SIZE); |
- if (dart.test(dart.dsend(dart.dload(data, 'length'), '>', 0))) builder.add(ListOfint()._check(data)); |
- } while (dart.test(dart.dsend(dart.dload(data, 'length'), '>', 0))); |
+ if (dart.notNull(data[dartx.length]) > 0) builder.add(data); |
+ } while (dart.notNull(data[dartx.length]) > 0); |
data = builder.takeBytes(); |
} else { |
data = opened.readSync(length); |
} |
- return ListOfint()._check(data); |
+ return data; |
} finally { |
opened.closeSync(); |
} |
@@ -38124,11 +38984,11 @@ io._File = class _File extends io.FileSystemEntity { |
} |
readAsLines(opts) { |
let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
- return this.readAsString({encoding: encoding}).then(ListOfString())(dart.bind(const$54 || (const$54 = dart.const(new convert.LineSplitter())), 'convert')); |
+ return this.readAsString({encoding: encoding}).then(ListOfString())(dart.bind(const$57 || (const$57 = dart.const(new convert.LineSplitter())), 'convert')); |
} |
readAsLinesSync(opts) { |
let encoding = opts && 'encoding' in opts ? opts.encoding : convert.UTF8; |
- return (const$55 || (const$55 = dart.const(new convert.LineSplitter()))).convert(this.readAsStringSync({encoding: encoding})); |
+ return (const$58 || (const$58 = dart.const(new convert.LineSplitter()))).convert(this.readAsStringSync({encoding: encoding})); |
} |
writeAsBytes(bytes, opts) { |
let mode = opts && 'mode' in opts ? opts.mode : io.FileMode.WRITE; |
@@ -38182,8 +39042,6 @@ dart.setSignature(io._File, { |
methods: () => ({ |
exists: dart.definiteFunctionType(async.Future$(core.bool), []), |
existsSync: dart.definiteFunctionType(core.bool, []), |
- stat: dart.definiteFunctionType(async.Future$(io.FileStat), []), |
- statSync: dart.definiteFunctionType(io.FileStat, []), |
create: dart.definiteFunctionType(async.Future$(io.File), [], {recursive: core.bool}), |
createSync: dart.definiteFunctionType(dart.void, [], {recursive: core.bool}), |
[_delete]: dart.definiteFunctionType(async.Future$(io.File), [], {recursive: core.bool}), |
@@ -38195,8 +39053,14 @@ dart.setSignature(io._File, { |
open: dart.definiteFunctionType(async.Future$(io.RandomAccessFile), [], {mode: io.FileMode}), |
length: dart.definiteFunctionType(async.Future$(core.int), []), |
lengthSync: dart.definiteFunctionType(core.int, []), |
+ lastAccessed: dart.definiteFunctionType(async.Future$(core.DateTime), []), |
+ lastAccessedSync: dart.definiteFunctionType(core.DateTime, []), |
+ setLastAccessed: dart.definiteFunctionType(async.Future, [core.DateTime]), |
+ setLastAccessedSync: dart.definiteFunctionType(dart.void, [core.DateTime]), |
lastModified: dart.definiteFunctionType(async.Future$(core.DateTime), []), |
lastModifiedSync: dart.definiteFunctionType(core.DateTime, []), |
+ setLastModified: dart.definiteFunctionType(async.Future, [core.DateTime]), |
+ setLastModifiedSync: dart.definiteFunctionType(dart.void, [core.DateTime]), |
openSync: dart.definiteFunctionType(io.RandomAccessFile, [], {mode: io.FileMode}), |
openRead: dart.definiteFunctionType(async.Stream$(core.List$(core.int)), [], [core.int, core.int]), |
openWrite: dart.definiteFunctionType(io.IOSink, [], {mode: io.FileMode, encoding: convert.Encoding}), |
@@ -38223,26 +39087,49 @@ dart.setSignature(io._File, { |
_renameLink: dart.definiteFunctionType(dart.dynamic, [core.String, core.String]), |
_copy: dart.definiteFunctionType(dart.dynamic, [core.String, core.String]), |
_lengthFromPath: dart.definiteFunctionType(dart.dynamic, [core.String]), |
+ _lastAccessed: dart.definiteFunctionType(dart.dynamic, [core.String]), |
+ _setLastAccessed: dart.definiteFunctionType(dart.dynamic, [core.String, core.int]), |
_lastModified: dart.definiteFunctionType(dart.dynamic, [core.String]), |
+ _setLastModified: dart.definiteFunctionType(dart.dynamic, [core.String, core.int]), |
_open: dart.definiteFunctionType(dart.dynamic, [core.String, core.int]), |
_openStdio: dart.definiteFunctionType(core.int, [core.int]), |
_openStdioSync: dart.definiteFunctionType(io.RandomAccessFile, [core.int]), |
throwIfError: dart.definiteFunctionType(dart.dynamic, [core.Object, core.String, core.String]) |
}), |
- names: ['_exists', '_create', '_createLink', '_linkTarget', '_deleteNative', '_deleteLinkNative', '_rename', '_renameLink', '_copy', '_lengthFromPath', '_lastModified', '_open', '_openStdio', '_openStdioSync', 'throwIfError'] |
+ names: ['_exists', '_create', '_createLink', '_linkTarget', '_deleteNative', '_deleteLinkNative', '_rename', '_renameLink', '_copy', '_lengthFromPath', '_lastAccessed', '_setLastAccessed', '_lastModified', '_setLastModified', '_open', '_openStdio', '_openStdioSync', 'throwIfError'] |
}); |
io._RandomAccessFileOps = class _RandomAccessFileOps extends core.Object { |
static new(pointer) { |
dart.throw(new core.UnsupportedError("RandomAccessFile")); |
} |
}; |
+io._FileTranslation = class _FileTranslation extends core.Object { |
+ new(index) { |
+ this.index = index; |
+ } |
+ toString() { |
+ return { |
+ 0: "_FileTranslation.text", |
+ 1: "_FileTranslation.binary" |
+ }[this.index]; |
+ } |
+}; |
+dart.setSignature(io._FileTranslation, { |
+ fields: () => ({index: core.int}) |
+}); |
+dart.defineEnumValues(io._FileTranslation, [ |
+ 'text', |
+ 'binary' |
+]); |
const _asyncDispatched = Symbol('_asyncDispatched'); |
const _fileService = Symbol('_fileService'); |
const _resourceInfo = Symbol('_resourceInfo'); |
+const _translation = Symbol('_translation'); |
const _maybeConnectHandler = Symbol('_maybeConnectHandler'); |
const _maybePerformCleanup = Symbol('_maybePerformCleanup'); |
const _dispatch = Symbol('_dispatch'); |
const _checkAvailable = Symbol('_checkAvailable'); |
+const _fileLockValue = Symbol('_fileLockValue'); |
io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
new(pointer, path) { |
this.path = path; |
@@ -38250,9 +39137,11 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
this[_fileService] = null; |
this[_resourceInfo] = null; |
this[_ops] = null; |
+ this[_translation] = null; |
this.closed = false; |
this[_ops] = io._RandomAccessFileOps.new(pointer); |
this[_resourceInfo] = new io._FileResourceInfo(this); |
+ this[_translation] = io._FileTranslation.binary; |
this[_maybeConnectHandler](); |
} |
[_maybePerformCleanup]() { |
@@ -38314,8 +39203,8 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
dart.throw(io._exceptionFromResponse(response, "read failed", this.path)); |
} |
this[_resourceInfo].addRead(core.int._check(dart.dload(dart.dindex(response, 1), 'length'))); |
- return FutureOrOfListOfint()._check(dart.dindex(response, 1)); |
- }, dynamicToFutureOrOfListOfint())); |
+ return ListOfint().as(dart.dindex(response, 1)); |
+ }, dynamicToListOfint())); |
} |
readSync(bytes) { |
this[_checkAvailable](); |
@@ -38327,7 +39216,7 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
dart.throw(new io.FileSystemException("readSync failed", this.path, result)); |
} |
this[_resourceInfo].addRead(core.int._check(dart.dload(result, 'length'))); |
- return ListOfint()._check(result); |
+ return ListOfint().as(result); |
} |
readInto(buffer, start, end) { |
if (start === void 0) start = 0; |
@@ -38345,8 +39234,8 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
dart.throw(io._exceptionFromResponse(response, "readInto failed", this.path)); |
} |
let read = dart.dindex(response, 1); |
- let data = dart.dindex(response, 2); |
- buffer[dartx.setRange](start, dart.asInt(dart.notNull(start) + dart.notNull(core.num._check(read))), IterableOfint()._check(data)); |
+ let data = ListOfint().as(dart.dindex(response, 2)); |
+ buffer[dartx.setRange](start, dart.asInt(dart.notNull(start) + dart.notNull(core.num._check(read))), data); |
this[_resourceInfo].addRead(core.int._check(read)); |
return FutureOrOfint()._check(read); |
}, dynamicToFutureOrOfint())); |
@@ -38435,7 +39324,7 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
return; |
} |
let bufferAndStart = io._ensureFastAndSerializableByteData(buffer, start, end); |
- let result = this[_ops].writeFrom(ListOfint()._check(bufferAndStart.buffer), bufferAndStart.start, dart.notNull(end) - (dart.notNull(start) - dart.notNull(bufferAndStart.start))); |
+ let result = this[_ops].writeFrom(bufferAndStart.buffer, bufferAndStart.start, dart.notNull(end) - (dart.notNull(start) - dart.notNull(bufferAndStart.start))); |
if (io.OSError.is(result)) { |
dart.throw(new io.FileSystemException("writeFrom failed", this.path, result)); |
} |
@@ -38534,6 +39423,30 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
dart.throw(new io.FileSystemException("flush failed", this.path, result)); |
} |
} |
+ [_fileLockValue](fl) { |
+ switch (fl) { |
+ case io.FileLock.SHARED: |
+ { |
+ return io._RandomAccessFile.LOCK_SHARED; |
+ } |
+ case io.FileLock.EXCLUSIVE: |
+ { |
+ return io._RandomAccessFile.LOCK_EXCLUSIVE; |
+ } |
+ case io.FileLock.BLOCKING_SHARED: |
+ { |
+ return io._RandomAccessFile.LOCK_BLOCKING_SHARED; |
+ } |
+ case io.FileLock.BLOCKING_EXCLUSIVE: |
+ { |
+ return io._RandomAccessFile.LOCK_BLOCKING_EXCLUSIVE; |
+ } |
+ default: |
+ { |
+ return -1; |
+ } |
+ } |
+ } |
lock(mode, start, end) { |
if (mode === void 0) mode = io.FileLock.EXCLUSIVE; |
if (start === void 0) start = 0; |
@@ -38544,7 +39457,7 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
if (dart.notNull(start) < 0 || dart.notNull(end) < -1 || end != -1 && dart.notNull(start) >= dart.notNull(end)) { |
dart.throw(new core.ArgumentError()); |
} |
- let lock = dart.equals(mode, io.FileLock.EXCLUSIVE) ? io._RandomAccessFile.LOCK_EXCLUSIVE : io._RandomAccessFile.LOCK_SHARED; |
+ let lock = this[_fileLockValue](mode); |
return this[_dispatch](io._FILE_LOCK, JSArrayOfint().of([null, lock, start, end])).then(io._RandomAccessFile)(dart.fn(response => { |
if (dart.test(io._isErrorResponse(response))) { |
dart.throw(io._exceptionFromResponse(response, 'lock failed', this.path)); |
@@ -38579,7 +39492,7 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
if (dart.notNull(start) < 0 || dart.notNull(end) < -1 || end != -1 && dart.notNull(start) >= dart.notNull(end)) { |
dart.throw(new core.ArgumentError()); |
} |
- let lock = dart.equals(mode, io.FileLock.EXCLUSIVE) ? io._RandomAccessFile.LOCK_EXCLUSIVE : io._RandomAccessFile.LOCK_SHARED; |
+ let lock = this[_fileLockValue](mode); |
let result = this[_ops].lock(lock, start, end); |
if (io.OSError.is(result)) { |
dart.throw(new io.FileSystemException('lock failed', this.path, result)); |
@@ -38600,6 +39513,15 @@ io._RandomAccessFile = class _RandomAccessFile extends core.Object { |
dart.throw(new io.FileSystemException('unlock failed', this.path, result)); |
} |
} |
+ get translation() { |
+ return this[_translation]; |
+ } |
+ set translation(translation) { |
+ if (!dart.equals(this[_translation], translation)) { |
+ this[_ops].setTranslation(translation.index); |
+ this[_translation] = translation; |
+ } |
+ } |
[_pointer]() { |
return this[_ops].getPointer(); |
} |
@@ -38635,11 +39557,14 @@ dart.setSignature(io._RandomAccessFile, { |
fields: () => ({ |
path: core.String, |
[_asyncDispatched]: core.bool, |
- [_fileService]: isolate.SendPort, |
+ [_fileService]: isolate$.SendPort, |
[_resourceInfo]: io._FileResourceInfo, |
[_ops]: io._RandomAccessFileOps, |
+ [_translation]: io._FileTranslation, |
closed: core.bool |
}), |
+ getters: () => ({translation: dart.definiteFunctionType(io._FileTranslation, [])}), |
+ setters: () => ({translation: dart.definiteFunctionType(dart.void, [io._FileTranslation])}), |
methods: () => ({ |
[_maybePerformCleanup]: dart.definiteFunctionType(dart.void, []), |
[_maybeConnectHandler]: dart.definiteFunctionType(dart.dynamic, []), |
@@ -38667,6 +39592,7 @@ dart.setSignature(io._RandomAccessFile, { |
lengthSync: dart.definiteFunctionType(core.int, []), |
flush: dart.definiteFunctionType(async.Future$(io.RandomAccessFile), []), |
flushSync: dart.definiteFunctionType(dart.void, []), |
+ [_fileLockValue]: dart.definiteFunctionType(core.int, [io.FileLock]), |
lock: dart.definiteFunctionType(async.Future$(io.RandomAccessFile), [], [io.FileLock, core.int, core.int]), |
unlock: dart.definiteFunctionType(async.Future$(io.RandomAccessFile), [], [core.int, core.int]), |
lockSync: dart.definiteFunctionType(dart.void, [], [io.FileLock, core.int, core.int]), |
@@ -38680,7 +39606,9 @@ io._RandomAccessFile._connectedResourceHandler = false; |
io._RandomAccessFile.LOCK_UNLOCK = 0; |
io._RandomAccessFile.LOCK_SHARED = 1; |
io._RandomAccessFile.LOCK_EXCLUSIVE = 2; |
-let const$56; |
+io._RandomAccessFile.LOCK_BLOCKING_SHARED = 3; |
+io._RandomAccessFile.LOCK_BLOCKING_EXCLUSIVE = 4; |
+let const$59; |
io.FileSystemEntityType = class FileSystemEntityType extends core.Object { |
_internal(type) { |
this[_type] = type; |
@@ -38689,7 +39617,7 @@ io.FileSystemEntityType = class FileSystemEntityType extends core.Object { |
return io.FileSystemEntityType._typeList[dartx._get](type); |
} |
toString() { |
- return (const$56 || (const$56 = dart.constList(['FILE', 'DIRECTORY', 'LINK', 'NOT_FOUND'], core.String)))[dartx._get](this[_type]); |
+ return (const$59 || (const$59 = dart.constList(['FILE', 'DIRECTORY', 'LINK', 'NOT_FOUND'], core.String)))[dartx._get](this[_type]); |
} |
}; |
dart.defineNamedConstructor(io.FileSystemEntityType, '_internal'); |
@@ -38715,7 +39643,7 @@ dart.defineLazy(io.FileSystemEntityType, { |
return dart.constList([io.FileSystemEntityType.FILE, io.FileSystemEntityType.DIRECTORY, io.FileSystemEntityType.LINK, io.FileSystemEntityType.NOT_FOUND], io.FileSystemEntityType); |
} |
}); |
-let const$57; |
+let const$60; |
io.FileStat = class FileStat extends core.Object { |
_internal(changed, modified, accessed, type, mode, size) { |
this.changed = changed; |
@@ -38761,7 +39689,7 @@ io.FileStat = class FileStat extends core.Object { |
} |
modeString() { |
let permissions = dart.notNull(this.mode) & 4095; |
- let codes = const$57 || (const$57 = dart.constList(['---', '--x', '-w-', '-wx', 'r--', 'r-x', 'rw-', 'rwx'], core.String)); |
+ let codes = const$60 || (const$60 = dart.constList(['---', '--x', '-w-', '-wx', 'r--', 'r-x', 'rw-', 'rwx'], core.String)); |
let result = []; |
if ((permissions & 2048) != 0) result[dartx.add]("(suid) "); |
if ((permissions & 1024) != 0) result[dartx.add]("(guid) "); |
@@ -39261,19 +40189,19 @@ dart.setSignature(io.RedirectException, { |
}), |
getters: () => ({uri: dart.definiteFunctionType(core.Uri, [])}) |
}); |
-let const$58; |
-let const$59; |
-let const$60; |
let const$61; |
let const$62; |
let const$63; |
let const$64; |
let const$65; |
let const$66; |
+let const$67; |
+let const$68; |
+let const$69; |
io.HttpDate = class HttpDate extends core.Object { |
static format(date) { |
- let wkday = const$58 || (const$58 = dart.constList(["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], core.String)); |
- let month = const$59 || (const$59 = dart.constList(["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], core.String)); |
+ let wkday = const$61 || (const$61 = dart.constList(["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], core.String)); |
+ let month = const$62 || (const$62 = dart.constList(["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], core.String)); |
let d = date.toUtc(); |
let sb = new core.StringBuffer(); |
sb.write(wkday[dartx._get](dart.notNull(d.weekday) - 1)); |
@@ -39295,12 +40223,12 @@ io.HttpDate = class HttpDate extends core.Object { |
} |
static parse(date) { |
let SP = 32; |
- let wkdays = const$60 || (const$60 = dart.constList(["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], core.String)); |
- let weekdays = const$61 || (const$61 = dart.constList(["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], core.String)); |
- let months = const$62 || (const$62 = dart.constList(["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], core.String)); |
- let wkdaysLowerCase = const$63 || (const$63 = dart.constList(["mon", "tue", "wed", "thu", "fri", "sat", "sun"], core.String)); |
- let weekdaysLowerCase = const$64 || (const$64 = dart.constList(["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"], core.String)); |
- let monthsLowerCase = const$65 || (const$65 = dart.constList(["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"], core.String)); |
+ let wkdays = const$63 || (const$63 = dart.constList(["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"], core.String)); |
+ let weekdays = const$64 || (const$64 = dart.constList(["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], core.String)); |
+ let months = const$65 || (const$65 = dart.constList(["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], core.String)); |
+ let wkdaysLowerCase = const$66 || (const$66 = dart.constList(["mon", "tue", "wed", "thu", "fri", "sat", "sun"], core.String)); |
+ let weekdaysLowerCase = const$67 || (const$67 = dart.constList(["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"], core.String)); |
+ let monthsLowerCase = const$68 || (const$68 = dart.constList(["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"], core.String)); |
let formatRfc1123 = 0; |
let formatRfc850 = 1; |
let formatAsctime = 2; |
@@ -39416,7 +40344,7 @@ io.HttpDate = class HttpDate extends core.Object { |
return new core.DateTime.utc(year, dart.notNull(month) + 1, day, hours, minutes, seconds, 0); |
} |
static _parseCookieDate(date) { |
- let monthsLowerCase = const$66 || (const$66 = dart.constList(["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"], core.String)); |
+ let monthsLowerCase = const$69 || (const$69 = dart.constList(["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec"], core.String)); |
let position = 0; |
function error() { |
dart.throw(new io.HttpException(dart.str`Invalid cookie date ${date}`)); |
@@ -39550,7 +40478,7 @@ const _addTransferEncoding = Symbol('_addTransferEncoding'); |
const _addIfModifiedSince = Symbol('_addIfModifiedSince'); |
const _foldHeader = Symbol('_foldHeader'); |
const _finalize = Symbol('_finalize'); |
-const _write = Symbol('_write'); |
+const _build = Symbol('_build'); |
const _parseCookies = Symbol('_parseCookies'); |
io._HttpHeaders = class _HttpHeaders extends core.Object { |
new(protocolVersion, opts) { |
@@ -39986,81 +40914,32 @@ io._HttpHeaders = class _HttpHeaders extends core.Object { |
[_finalize]() { |
this[_mutable] = false; |
} |
- [_write](buffer, offset) { |
- function write(bytes) { |
- let len = bytes[dartx.length]; |
- for (let i = 0; i < dart.notNull(len); i++) { |
- buffer[dartx._set](dart.notNull(offset) + i, bytes[dartx._get](i)); |
- } |
- offset = dart.notNull(offset) + dart.notNull(len); |
- } |
- dart.fn(write, ListOfintTovoid()); |
+ [_build](builder) { |
for (let name of this[_headers][dartx.keys]) { |
let values = this[_headers][dartx._get](name); |
let fold = core.bool._check(this[_foldHeader](name)); |
let nameData = name[dartx.codeUnits]; |
- write(nameData); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.COLON); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
+ builder.add(nameData); |
+ builder.addByte(io._CharCode.COLON); |
+ builder.addByte(io._CharCode.SP); |
for (let i = 0; i < dart.notNull(values[dartx.length]); i++) { |
if (i > 0) { |
if (dart.test(fold)) { |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.COMMA); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
+ builder.addByte(io._CharCode.COMMA); |
+ builder.addByte(io._CharCode.SP); |
} else { |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.CR); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.LF); |
- write(nameData); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.COLON); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
+ builder.addByte(io._CharCode.CR); |
+ builder.addByte(io._CharCode.LF); |
+ builder.add(nameData); |
+ builder.addByte(io._CharCode.COLON); |
+ builder.addByte(io._CharCode.SP); |
} |
} |
- write(values[dartx._get](i)[dartx.codeUnits]); |
+ builder.add(values[dartx._get](i)[dartx.codeUnits]); |
} |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.CR); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.LF); |
+ builder.addByte(io._CharCode.CR); |
+ builder.addByte(io._CharCode.LF); |
} |
- return offset; |
} |
toString() { |
let sb = new core.StringBuffer(); |
@@ -40235,7 +41114,7 @@ dart.setSignature(io._HttpHeaders, { |
[_updateHostHeader]: dart.definiteFunctionType(dart.dynamic, []), |
[_foldHeader]: dart.definiteFunctionType(dart.dynamic, [core.String]), |
[_finalize]: dart.definiteFunctionType(dart.void, []), |
- [_write]: dart.definiteFunctionType(core.int, [typed_data.Uint8List, core.int]), |
+ [_build]: dart.definiteFunctionType(dart.void, [io.BytesBuilder]), |
[_parseCookies]: dart.definiteFunctionType(core.List$(io.Cookie), []) |
}), |
statics: () => ({ |
@@ -40384,7 +41263,7 @@ io._HeaderValue = class _HeaderValue extends core.Object { |
return; |
} |
let value = parseParameterValue(); |
- if (name == 'charset' && io._ContentType.is(this)) { |
+ if (name == 'charset' && io._ContentType.is(this) && value != null) { |
value = value[dartx.toLowerCase](); |
} |
parameters._set(name, value); |
@@ -40495,7 +41374,7 @@ dart.setSignature(io._ContentType, { |
}); |
const _validate = Symbol('_validate'); |
const _parseSetCookieValue = Symbol('_parseSetCookieValue'); |
-let const$67; |
+let const$70; |
io._Cookie = class _Cookie extends core.Object { |
new(name, value) { |
if (name === void 0) name = null; |
@@ -40634,7 +41513,7 @@ io._Cookie = class _Cookie extends core.Object { |
return sb.toString(); |
} |
[_validate]() { |
- let SEPERATORS = const$67 || (const$67 = dart.constList(["(", ")", "<", ">", "@", ",", ";", ":", "\\", '"', "/", "[", "]", "?", "=", "{", "}"], core.String)); |
+ let SEPERATORS = const$70 || (const$70 = dart.constList(["(", ")", "<", ">", "@", ",", ";", ":", "\\", '"', "/", "[", "]", "?", "=", "{", "}"], core.String)); |
for (let i = 0; i < dart.notNull(this.name[dartx.length]); i++) { |
let codeUnit = this.name[dartx.codeUnits][dartx._get](i); |
if (dart.notNull(codeUnit) <= 32 || dart.notNull(codeUnit) >= 127 || dart.notNull(SEPERATORS[dartx.indexOf](this.name[dartx._get](i))) >= 0) { |
@@ -40668,6 +41547,7 @@ dart.setSignature(io._Cookie, { |
}) |
}); |
io._OUTGOING_BUFFER_SIZE = 8 * 1024; |
+io._BytesConsumer = dart.typedef('_BytesConsumer', () => dart.functionType(dart.void, [ListOfint()])); |
const _transferLength = Symbol('_transferLength'); |
const _dataCompleter = Symbol('_dataCompleter'); |
const _stream$ = Symbol('_stream'); |
@@ -40966,7 +41846,7 @@ io._HttpClientResponse = class _HttpClientResponse extends io._HttpInboundMessag |
let cancelOnError = opts && 'cancelOnError' in opts ? opts.cancelOnError : null; |
if (dart.test(this[_incoming].upgraded)) { |
this[_httpRequest][_httpClientConnection].destroy(); |
- return StreamSubscriptionOfListOfint()._check(async.Stream.fromIterable([]).listen(null, {onDone: onDone})); |
+ return StreamOfListOfint().empty().listen(null, {onDone: onDone}); |
} |
let stream = this[_incoming]; |
if (dart.test(this[_httpClient].autoUncompress) && this.headers.value(io.HttpHeaders.CONTENT_ENCODING) == "gzip") { |
@@ -41088,7 +41968,7 @@ dart.setSignature(io._HttpClientResponse, { |
[_authenticate]: dart.definiteFunctionType(async.Future$(io.HttpClientResponse), [core.bool]) |
}) |
}); |
-const _uri = Symbol('_uri'); |
+const _uri$ = Symbol('_uri'); |
const _outgoing = Symbol('_outgoing'); |
const _encodingSet = Symbol('_encodingSet'); |
const _bufferOutput = Symbol('_bufferOutput'); |
@@ -41316,7 +42196,7 @@ io._HttpOutboundMessage$ = dart.generic(T => { |
class _HttpOutboundMessage extends io._IOSinkImpl { |
new(uri, protocolVersion, outgoing, opts) { |
let initialHeaders = opts && 'initialHeaders' in opts ? opts.initialHeaders : null; |
- this[_uri] = uri; |
+ this[_uri$] = uri; |
this.headers = new io._HttpHeaders(protocolVersion, {defaultPortForScheme: uri.scheme == 'https' ? io.HttpClient.DEFAULT_HTTPS_PORT : io.HttpClient.DEFAULT_HTTP_PORT, initialHeaders: initialHeaders}); |
this[_outgoing] = outgoing; |
this[_encodingSet] = false; |
@@ -41379,7 +42259,7 @@ io._HttpOutboundMessage$ = dart.generic(T => { |
fields: () => ({ |
[_encodingSet]: core.bool, |
[_bufferOutput]: core.bool, |
- [_uri]: core.Uri, |
+ [_uri$]: core.Uri, |
[_outgoing]: io._HttpOutgoing, |
headers: io._HttpHeaders |
}), |
@@ -41476,43 +42356,18 @@ io._HttpResponse = class _HttpResponse extends io._HttpOutboundMessage$(io.HttpR |
}, VoidToNull())); |
} |
[_writeHeader]() { |
- let buffer = typed_data.Uint8List.new(io._OUTGOING_BUFFER_SIZE); |
- let offset = 0; |
- function write(bytes) { |
- let len = bytes[dartx.length]; |
- for (let i = 0; i < dart.notNull(len); i++) { |
- buffer[dartx._set](dart.notNull(offset) + i, bytes[dartx._get](i)); |
- } |
- offset = dart.notNull(offset) + dart.notNull(len); |
- } |
- dart.fn(write, ListOfintTovoid()); |
+ let buffer = new io._CopyingBytesBuilder(io._OUTGOING_BUFFER_SIZE); |
if (this.headers.protocolVersion == "1.1") { |
- write(io._Const.HTTP11); |
+ buffer.add(io._Const.HTTP11); |
} else { |
- write(io._Const.HTTP10); |
- } |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
- write(dart.toString(this.statusCode)[dartx.codeUnits]); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
- write(this.reasonPhrase[dartx.codeUnits]); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.CR); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.LF); |
+ buffer.add(io._Const.HTTP10); |
+ } |
+ buffer.addByte(io._CharCode.SP); |
+ buffer.add(dart.toString(this.statusCode)[dartx.codeUnits]); |
+ buffer.addByte(io._CharCode.SP); |
+ buffer.add(this.reasonPhrase[dartx.codeUnits]); |
+ buffer.addByte(io._CharCode.CR); |
+ buffer.addByte(io._CharCode.LF); |
let session = this[_httpRequest][_session]; |
if (session != null && !dart.test(session[_destroyed])) { |
session[_isNew] = false; |
@@ -41541,18 +42396,11 @@ io._HttpResponse = class _HttpResponse extends io._HttpOutboundMessage$(io.HttpR |
}, CookieToNull())); |
} |
this.headers[_finalize](); |
- offset = this.headers[_write](buffer, offset); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.CR); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.LF); |
- this[_outgoing].setHeader(buffer, offset); |
+ this.headers[_build](buffer); |
+ buffer.addByte(io._CharCode.CR); |
+ buffer.addByte(io._CharCode.LF); |
+ let headerBytes = typed_data.Uint8List._check(buffer.takeBytes()); |
+ this[_outgoing].setHeader(headerBytes, headerBytes[dartx.length]); |
} |
[_findReasonPhrase](statusCode) { |
if (this[_reasonPhrase] != null) { |
@@ -41857,39 +42705,14 @@ io._HttpClientRequest = class _HttpClientRequest extends io._HttpOutboundMessage |
} |
} |
[_writeHeader]() { |
- let buffer = typed_data.Uint8List.new(io._OUTGOING_BUFFER_SIZE); |
- let offset = 0; |
- function write(bytes) { |
- let len = bytes[dartx.length]; |
- for (let i = 0; i < dart.notNull(len); i++) { |
- buffer[dartx._set](dart.notNull(offset) + i, bytes[dartx._get](i)); |
- } |
- offset = dart.notNull(offset) + dart.notNull(len); |
- } |
- dart.fn(write, ListOfintTovoid()); |
- write(this.method[dartx.codeUnits]); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
- write(this[_requestUri]()[dartx.codeUnits]); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.SP); |
- write(io._Const.HTTP11); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.CR); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.LF); |
+ let buffer = new io._CopyingBytesBuilder(io._OUTGOING_BUFFER_SIZE); |
+ buffer.add(this.method[dartx.codeUnits]); |
+ buffer.addByte(io._CharCode.SP); |
+ buffer.add(this[_requestUri]()[dartx.codeUnits]); |
+ buffer.addByte(io._CharCode.SP); |
+ buffer.add(io._Const.HTTP11); |
+ buffer.addByte(io._CharCode.CR); |
+ buffer.addByte(io._CharCode.LF); |
if (!dart.test(this.cookies[dartx.isEmpty])) { |
let sb = new core.StringBuffer(); |
for (let i = 0; i < dart.notNull(this.cookies[dartx.length]); i++) { |
@@ -41901,18 +42724,11 @@ io._HttpClientRequest = class _HttpClientRequest extends io._HttpOutboundMessage |
this.headers.add(io.HttpHeaders.COOKIE, sb.toString()); |
} |
this.headers[_finalize](); |
- offset = this.headers[_write](buffer, offset); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.CR); |
- buffer[dartx._set]((() => { |
- let x = offset; |
- offset = dart.notNull(x) + 1; |
- return x; |
- })(), io._CharCode.LF); |
- this[_outgoing].setHeader(buffer, offset); |
+ this.headers[_build](buffer); |
+ buffer.addByte(io._CharCode.CR); |
+ buffer.addByte(io._CharCode.LF); |
+ let headerBytes = typed_data.Uint8List._check(buffer.takeBytes()); |
+ this[_outgoing].setHeader(headerBytes, headerBytes[dartx.length]); |
} |
}; |
dart.addSimpleTypeTests(io._HttpClientRequest); |
@@ -41956,19 +42772,19 @@ io._HttpGZipSink = class _HttpGZipSink extends convert.ByteConversionSink { |
super.new(); |
} |
add(chunk) { |
- dart.dcall(this[_consume], chunk); |
+ this[_consume](chunk); |
} |
addSlice(chunk, start, end, isLast) { |
if (typed_data.Uint8List.is(chunk)) { |
- dart.dcall(this[_consume], typed_data.Uint8List.view(chunk[dartx.buffer], start, dart.notNull(end) - dart.notNull(start))); |
+ this[_consume](typed_data.Uint8List.view(chunk[dartx.buffer], start, dart.notNull(end) - dart.notNull(start))); |
} else { |
- dart.dcall(this[_consume], chunk[dartx.sublist](start, dart.notNull(end) - dart.notNull(start))); |
+ this[_consume](chunk[dartx.sublist](start, dart.notNull(end) - dart.notNull(start))); |
} |
} |
close() {} |
}; |
dart.setSignature(io._HttpGZipSink, { |
- fields: () => ({[_consume]: core.Function}), |
+ fields: () => ({[_consume]: io._BytesConsumer}), |
methods: () => ({ |
add: dart.definiteFunctionType(dart.void, [ListOfint()]), |
addSlice: dart.definiteFunctionType(dart.void, [ListOfint(), core.int, core.int, core.bool]), |
@@ -41988,10 +42804,10 @@ const _addGZipChunk = Symbol('_addGZipChunk'); |
const _addChunk$ = Symbol('_addChunk'); |
const _chunkHeader = Symbol('_chunkHeader'); |
const _ignoreError = Symbol('_ignoreError'); |
-let const$68; |
+let const$71; |
io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
new(socket) { |
- this[_doneCompleter] = async.Completer.new(); |
+ this[_doneCompleter] = CompleterOfSocket().new(); |
this.socket = socket; |
this.ignoreBody = false; |
this.headersWritten = false; |
@@ -42013,16 +42829,6 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
writeHeaders(opts) { |
let drainRequest = opts && 'drainRequest' in opts ? opts.drainRequest : true; |
let setOutgoing = opts && 'setOutgoing' in opts ? opts.setOutgoing : true; |
- const write = (function() { |
- try { |
- this.outbound[_writeHeader](); |
- } catch (_) { |
- return async.Future.error(new io.HttpException(dart.str`Headers size exceeded the of '${io._OUTGOING_BUFFER_SIZE}'` + " bytes")); |
- } |
- |
- return null; |
- }).bind(this); |
- dart.fn(write, VoidToFuture()); |
if (dart.test(this.headersWritten)) return null; |
this.headersWritten = true; |
let drainFuture = null; |
@@ -42044,22 +42850,22 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
} else { |
drainRequest = false; |
} |
- if (dart.test(this.ignoreBody)) { |
- return write(); |
- } |
- if (dart.test(setOutgoing)) { |
- let contentLength = this.outbound.headers.contentLength; |
- if (dart.test(this.outbound.headers.chunkedTransferEncoding)) { |
- this.chunked = true; |
- if (gzip) this.gzip = true; |
- } else if (dart.notNull(contentLength) >= 0) { |
- this.contentLength = contentLength; |
+ if (!dart.test(this.ignoreBody)) { |
+ if (dart.test(setOutgoing)) { |
+ let contentLength = this.outbound.headers.contentLength; |
+ if (dart.test(this.outbound.headers.chunkedTransferEncoding)) { |
+ this.chunked = true; |
+ if (gzip) this.gzip = true; |
+ } else if (dart.notNull(contentLength) >= 0) { |
+ this.contentLength = contentLength; |
+ } |
+ } |
+ if (drainFuture != null) { |
+ return drainFuture.then(dart.void)(dart.fn(_ => this.outbound[_writeHeader](), dynamicTovoid$())); |
} |
} |
- if (drainFuture != null) { |
- return drainFuture.then(dart.dynamic)(dart.fn(_ => write(), dynamicToFuture())); |
- } |
- return write(); |
+ this.outbound[_writeHeader](); |
+ return null; |
} |
addStream(stream) { |
if (dart.test(this[_socketError])) { |
@@ -42076,10 +42882,10 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
return this.close(); |
} |
let sub = null; |
- let controller = async.StreamController.new({onPause: dart.fn(() => dart.dsend(sub, 'pause'), VoidTovoid$()), onResume: dart.fn(() => dart.dsend(sub, 'resume'), VoidTovoid$()), sync: true}); |
+ let controller = StreamControllerOfListOfint().new({onPause: dart.fn(() => sub.pause(), VoidTovoid$()), onResume: dart.fn(() => sub.resume(), VoidTovoid$()), sync: true}); |
const onData = (function(data) { |
if (dart.test(this[_socketError])) return; |
- if (dart.equals(dart.dload(data, 'length'), 0)) return; |
+ if (data[dartx.length] == 0) return; |
if (dart.test(this.chunked)) { |
if (dart.test(this[_gzip])) { |
this[_gzipAdd] = dart.bind(controller, 'add'); |
@@ -42087,28 +42893,28 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
this[_gzipAdd] = null; |
return; |
} |
- this[_addChunk$](this[_chunkHeader](core.int._check(dart.dload(data, 'length'))), dart.bind(controller, 'add')); |
+ this[_addChunk$](this[_chunkHeader](data[dartx.length]), dart.bind(controller, 'add')); |
this[_pendingChunkedFooter] = 2; |
} else { |
if (this.contentLength != null) { |
- this[_bytesWritten] = dart.notNull(this[_bytesWritten]) + dart.notNull(core.num._check(dart.dload(data, 'length'))); |
+ this[_bytesWritten] = dart.notNull(this[_bytesWritten]) + dart.notNull(data[dartx.length]); |
if (dart.notNull(this[_bytesWritten]) > dart.notNull(this.contentLength)) { |
- controller.addError(new io.HttpException("Content size exceeds specified contentLength. " + dart.str`${this[_bytesWritten]} bytes written while expected ` + dart.str`${this.contentLength}. ` + dart.str`[${core.String.fromCharCodes(IterableOfint()._check(data))}]`)); |
+ controller.addError(new io.HttpException("Content size exceeds specified contentLength. " + dart.str`${this[_bytesWritten]} bytes written while expected ` + dart.str`${this.contentLength}. ` + dart.str`[${core.String.fromCharCodes(data)}]`)); |
return; |
} |
} |
} |
this[_addChunk$](data, dart.bind(controller, 'add')); |
}).bind(this); |
- dart.fn(onData, dynamicTovoid$()); |
+ dart.fn(onData, ListOfintTovoid()); |
sub = stream.listen(onData, {onError: dart.bind(controller, 'addError'), onDone: dart.bind(controller, 'close'), cancelOnError: true}); |
if (!dart.test(this.headersWritten)) { |
let future = this.writeHeaders(); |
if (future != null) { |
- dart.dsend(sub, 'pause', future); |
+ sub.pause(future); |
} |
} |
- return this.socket.addStream(StreamOfListOfint()._check(controller.stream)).then(io._HttpOutboundMessage)(dart.fn(_ => this.outbound, dynamicTo_HttpOutboundMessage()), {onError: dart.fn((error, stackTrace) => { |
+ return this.socket.addStream(controller.stream).then(io._HttpOutboundMessage)(dart.fn(_ => this.outbound, dynamicTo_HttpOutboundMessage()), {onError: dart.fn((error, stackTrace) => { |
if (dart.test(this[_gzip])) this[_gzipSink].close(); |
this[_socketError] = true; |
this[_doneCompleter].completeError(error, core.StackTrace._check(stackTrace)); |
@@ -42128,14 +42934,14 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
this.outbound.headers.chunkedTransferEncoding = false; |
this.outbound.headers.contentLength = 0; |
} else if (dart.notNull(this.outbound.headers.contentLength) > 0) { |
- let error = new io.HttpException("No content even though contentLength was specified to be " + dart.str`greater than 0: ${this.outbound.headers.contentLength}.`, {uri: this.outbound[_uri]}); |
+ let error = new io.HttpException("No content even though contentLength was specified to be " + dart.str`greater than 0: ${this.outbound.headers.contentLength}.`, {uri: this.outbound[_uri$]}); |
this[_doneCompleter].completeError(error); |
return this[_closeFuture] = async.Future.error(error); |
} |
} |
if (this.contentLength != null) { |
if (dart.notNull(this[_bytesWritten]) < dart.notNull(this.contentLength)) { |
- let error = new io.HttpException("Content size below specified contentLength. " + dart.str` ${this[_bytesWritten]} bytes written but expected ` + dart.str`${this.contentLength}.`, {uri: this.outbound[_uri]}); |
+ let error = new io.HttpException("Content size below specified contentLength. " + dart.str` ${this[_bytesWritten]} bytes written but expected ` + dart.str`${this.contentLength}.`, {uri: this.outbound[_uri$]}); |
this[_doneCompleter].completeError(error); |
return this[_closeFuture] = async.Future.error(error); |
} |
@@ -42181,7 +42987,6 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
} |
setHeader(data, length) { |
dart.assert(this[_length$2] == 0); |
- dart.assert(data[dartx.length] == io._OUTGOING_BUFFER_SIZE); |
this[_buffer$] = typed_data.Uint8List._check(data); |
this[_length$2] = length; |
} |
@@ -42192,10 +42997,10 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
dart.assert(this[_gzipSink] == null); |
this[_gzipSink] = new io.ZLibEncoder({gzip: true}).startChunkedConversion(new io._HttpGZipSink(dart.fn(data => { |
if (this[_gzipAdd] == null) return; |
- this[_addChunk$](this[_chunkHeader](core.int._check(dart.dload(data, 'length'))), _ChunkedConversionCallbackOfListOfint()._check(this[_gzipAdd])); |
+ this[_addChunk$](this[_chunkHeader](data[dartx.length]), this[_gzipAdd]); |
this[_pendingChunkedFooter] = 2; |
- this[_addChunk$](data, _ChunkedConversionCallbackOfListOfint()._check(this[_gzipAdd])); |
- }, dynamicToNull$()))); |
+ this[_addChunk$](data, this[_gzipAdd]); |
+ }, ListOfintToNull()))); |
} |
} |
[_ignoreError](error) { |
@@ -42203,19 +43008,19 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
} |
[_addGZipChunk](chunk, add) { |
if (!dart.test(this.outbound.bufferOutput)) { |
- add(ListOfint()._check(chunk)); |
+ add(chunk); |
return; |
} |
- if (dart.test(dart.dsend(dart.dload(chunk, 'length'), '>', dart.notNull(this[_gzipBuffer][dartx.length]) - dart.notNull(this[_gzipBufferLength])))) { |
+ if (dart.notNull(chunk[dartx.length]) > dart.notNull(this[_gzipBuffer][dartx.length]) - dart.notNull(this[_gzipBufferLength])) { |
add(typed_data.Uint8List.view(this[_gzipBuffer][dartx.buffer], 0, this[_gzipBufferLength])); |
this[_gzipBuffer] = typed_data.Uint8List.new(io._OUTGOING_BUFFER_SIZE); |
this[_gzipBufferLength] = 0; |
} |
- if (dart.test(dart.dsend(dart.dload(chunk, 'length'), '>', io._OUTGOING_BUFFER_SIZE))) { |
- add(ListOfint()._check(chunk)); |
+ if (dart.notNull(chunk[dartx.length]) > io._OUTGOING_BUFFER_SIZE) { |
+ add(chunk); |
} else { |
- this[_gzipBuffer][dartx.setRange](this[_gzipBufferLength], dart.asInt(dart.notNull(this[_gzipBufferLength]) + dart.notNull(core.num._check(dart.dload(chunk, 'length')))), IterableOfint()._check(chunk)); |
- this[_gzipBufferLength] = dart.notNull(this[_gzipBufferLength]) + dart.notNull(core.num._check(dart.dload(chunk, 'length'))); |
+ this[_gzipBuffer][dartx.setRange](this[_gzipBufferLength], dart.notNull(this[_gzipBufferLength]) + dart.notNull(chunk[dartx.length]), chunk); |
+ this[_gzipBufferLength] = dart.notNull(this[_gzipBufferLength]) + dart.notNull(chunk[dartx.length]); |
} |
} |
[_addChunk$](chunk, add) { |
@@ -42225,23 +43030,23 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
this[_buffer$] = null; |
this[_length$2] = 0; |
} |
- add(ListOfint()._check(chunk)); |
+ add(chunk); |
return; |
} |
- if (dart.test(dart.dsend(dart.dload(chunk, 'length'), '>', dart.notNull(this[_buffer$][dartx.length]) - dart.notNull(this[_length$2])))) { |
+ if (dart.notNull(chunk[dartx.length]) > dart.notNull(this[_buffer$][dartx.length]) - dart.notNull(this[_length$2])) { |
add(typed_data.Uint8List.view(this[_buffer$][dartx.buffer], 0, this[_length$2])); |
this[_buffer$] = typed_data.Uint8List.new(io._OUTGOING_BUFFER_SIZE); |
this[_length$2] = 0; |
} |
- if (dart.test(dart.dsend(dart.dload(chunk, 'length'), '>', io._OUTGOING_BUFFER_SIZE))) { |
- add(ListOfint()._check(chunk)); |
+ if (dart.notNull(chunk[dartx.length]) > io._OUTGOING_BUFFER_SIZE) { |
+ add(chunk); |
} else { |
- this[_buffer$][dartx.setRange](this[_length$2], dart.asInt(dart.notNull(this[_length$2]) + dart.notNull(core.num._check(dart.dload(chunk, 'length')))), IterableOfint()._check(chunk)); |
- this[_length$2] = dart.notNull(this[_length$2]) + dart.notNull(core.num._check(dart.dload(chunk, 'length'))); |
+ this[_buffer$][dartx.setRange](this[_length$2], dart.notNull(this[_length$2]) + dart.notNull(chunk[dartx.length]), chunk); |
+ this[_length$2] = dart.notNull(this[_length$2]) + dart.notNull(chunk[dartx.length]); |
} |
} |
[_chunkHeader](length) { |
- let hexDigits = const$68 || (const$68 = dart.constList([48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70], core.int)); |
+ let hexDigits = const$71 || (const$71 = dart.constList([48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70], core.int)); |
if (length == 0) { |
if (this[_pendingChunkedFooter] == 2) return io._HttpOutgoing._footerAndChunk0Length; |
return io._HttpOutgoing._chunk0Length; |
@@ -42270,7 +43075,7 @@ io._HttpOutgoing = class _HttpOutgoing extends core.Object { |
io._HttpOutgoing[dart.implements] = () => [StreamConsumerOfListOfint()]; |
dart.setSignature(io._HttpOutgoing, { |
fields: () => ({ |
- [_doneCompleter]: async.Completer, |
+ [_doneCompleter]: CompleterOfSocket(), |
socket: io.Socket, |
ignoreBody: core.bool, |
headersWritten: core.bool, |
@@ -42283,13 +43088,13 @@ dart.setSignature(io._HttpOutgoing, { |
[_bytesWritten]: core.int, |
[_gzip]: core.bool, |
[_gzipSink]: convert.ByteConversionSink, |
- [_gzipAdd]: core.Function, |
+ [_gzipAdd]: io._BytesConsumer, |
[_gzipBuffer]: typed_data.Uint8List, |
[_gzipBufferLength]: core.int, |
[_socketError]: core.bool, |
outbound: io._HttpOutboundMessage |
}), |
- getters: () => ({done: dart.definiteFunctionType(async.Future, [])}), |
+ getters: () => ({done: dart.definiteFunctionType(async.Future$(io.Socket), [])}), |
setters: () => ({gzip: dart.definiteFunctionType(dart.void, [core.bool])}), |
methods: () => ({ |
writeHeaders: dart.definiteFunctionType(async.Future, [], {drainRequest: core.bool, setOutgoing: core.bool}), |
@@ -42297,8 +43102,8 @@ dart.setSignature(io._HttpOutgoing, { |
close: dart.definiteFunctionType(async.Future, []), |
setHeader: dart.definiteFunctionType(dart.void, [ListOfint(), core.int]), |
[_ignoreError]: dart.definiteFunctionType(core.bool, [dart.dynamic]), |
- [_addGZipChunk]: dart.definiteFunctionType(dart.void, [dart.dynamic, _ChunkedConversionCallbackOfListOfint()]), |
- [_addChunk$]: dart.definiteFunctionType(dart.void, [dart.dynamic, _ChunkedConversionCallbackOfListOfint()]), |
+ [_addGZipChunk]: dart.definiteFunctionType(dart.void, [ListOfint(), _ChunkedConversionCallbackOfListOfint()]), |
+ [_addChunk$]: dart.definiteFunctionType(dart.void, [ListOfint(), _ChunkedConversionCallbackOfListOfint()]), |
[_chunkHeader]: dart.definiteFunctionType(core.List$(core.int), [core.int]) |
}) |
}); |
@@ -42406,7 +43211,7 @@ io._HttpClientConnection = class _HttpClientConnection extends core.Object { |
} |
} |
this[_httpParser].isHead = method == "HEAD"; |
- this[_streamFuture] = outgoing.done.then(dart.dynamic)(dart.fn(s => { |
+ this[_streamFuture] = outgoing.done.then(io.Socket)(dart.fn(s => { |
this[_nextResponseCompleter] = CompleterOf_HttpIncoming().new(); |
this[_nextResponseCompleter].future.then(dart.dynamic)(dart.fn(incoming => { |
this[_currentUri] = null; |
@@ -42449,13 +43254,13 @@ io._HttpClientConnection = class _HttpClientConnection extends core.Object { |
}, dynamicAnddynamicToNull())); |
this[_subscription$].resume(); |
return s; |
- }, dynamicTodynamic$()), {onError: dart.fn(e => { |
+ }, SocketToSocket()), {onError: dart.fn(e => { |
this.destroy(); |
}, dynamicToNull$())}); |
return request; |
} |
detachSocket() { |
- return this[_streamFuture].then(io._DetachedSocket)(dart.fn(_ => new io._DetachedSocket(this[_socket], this[_httpParser].detachIncoming()), dynamicTo_DetachedSocket())); |
+ return this[_streamFuture].then(io._DetachedSocket)(dart.fn(_ => new io._DetachedSocket(this[_socket], this[_httpParser].detachIncoming()), SocketTo_DetachedSocket())); |
} |
destroy() { |
this.closed = true; |
@@ -42465,12 +43270,12 @@ io._HttpClientConnection = class _HttpClientConnection extends core.Object { |
close() { |
this.closed = true; |
this[_httpClient][_connectionClosed](this); |
- this[_streamFuture].then(dart.void)(dart.fn(_ => this[_socket].destroy(), dynamicTovoid$())); |
+ this[_streamFuture].then(dart.void)(dart.fn(_ => this[_socket].destroy(), SocketTovoid())); |
} |
createProxyTunnel(host, port, proxy, callback) { |
- let request = this.send(core.Uri.new({host: core.String._check(host), port: core.int._check(port)}), core.int._check(port), "CONNECT", io._Proxy._check(proxy)); |
- if (dart.test(dart.dload(proxy, 'isAuthenticated'))) { |
- let auth = io._CryptoUtils.bytesToBase64(convert.UTF8.encode(dart.str`${dart.dload(proxy, 'username')}:${dart.dload(proxy, 'password')}`)); |
+ let request = this.send(core.Uri.new({host: host, port: port}), port, "CONNECT", proxy); |
+ if (dart.test(proxy.isAuthenticated)) { |
+ let auth = io._CryptoUtils.bytesToBase64(convert.UTF8.encode(dart.str`${proxy.username}:${proxy.password}`)); |
request.headers.set(io.HttpHeaders.PROXY_AUTHORIZATION, dart.str`Basic ${auth}`); |
} |
return request.close().then(io.SecureSocket)(dart.fn(response => { |
@@ -42478,9 +43283,9 @@ io._HttpClientConnection = class _HttpClientConnection extends core.Object { |
dart.throw("Proxy failed to establish tunnel " + dart.str`(${response.statusCode} ${response.reasonPhrase})`); |
} |
let socket = io._HttpClientResponse.as(response)[_httpRequest][_httpClientConnection][_socket]; |
- return io.SecureSocket.secure(socket, {host: host, context: this[_context], onBadCertificate: X509CertificateTobool()._check(callback)}); |
+ return io.SecureSocket.secure(socket, {host: host, context: this[_context], onBadCertificate: callback}); |
}, HttpClientResponseToFutureOfSecureSocket())).then(io._HttpClientConnection)(dart.fn(secureSocket => { |
- let key = core.String._check(io._HttpClientConnection.makeKey(true, core.String._check(host), core.int._check(port))); |
+ let key = core.String._check(io._HttpClientConnection.makeKey(true, host, port)); |
return new io._HttpClientConnection(key, secureSocket, request[_httpClient], true); |
}, SecureSocketTo_HttpClientConnection())); |
} |
@@ -42518,7 +43323,7 @@ dart.setSignature(io._HttpClientConnection, { |
closed: core.bool, |
[_currentUri]: core.Uri, |
[_nextResponseCompleter]: CompleterOf_HttpIncoming(), |
- [_streamFuture]: async.Future |
+ [_streamFuture]: FutureOfSocket() |
}), |
getters: () => ({connectionInfo: dart.definiteFunctionType(io.HttpConnectionInfo, [])}), |
methods: () => ({ |
@@ -42526,7 +43331,7 @@ dart.setSignature(io._HttpClientConnection, { |
detachSocket: dart.definiteFunctionType(async.Future$(io.Socket), []), |
destroy: dart.definiteFunctionType(dart.void, []), |
close: dart.definiteFunctionType(dart.void, []), |
- createProxyTunnel: dart.definiteFunctionType(async.Future$(io._HttpClientConnection), [dart.dynamic, dart.dynamic, dart.dynamic, dart.dynamic]), |
+ createProxyTunnel: dart.definiteFunctionType(async.Future$(io._HttpClientConnection), [core.String, core.int, io._Proxy, X509CertificateTobool()]), |
stopTimer: dart.definiteFunctionType(dart.void, []), |
startTimer: dart.definiteFunctionType(dart.void, []) |
}), |
@@ -42620,11 +43425,11 @@ io._ConnectionTarget = class _ConnectionTarget extends core.Object { |
return FutureOf_ConnectionInfo().value(new io._ConnectionInfo(connection, proxy)); |
} |
if (client.maxConnectionsPerHost != null && dart.notNull(this[_active].length) + dart.notNull(this[_connecting]) >= dart.notNull(client.maxConnectionsPerHost)) { |
- let completer = async.Completer.new(); |
+ let completer = CompleterOf_ConnectionInfo().new(); |
this[_pending$].add(dart.fn(() => { |
- this.connect(uriHost, uriPort, proxy, client).then(dart.void)(dart.bind(completer, 'complete'), {onError: dart.bind(completer, 'completeError')}); |
+ completer.complete(this.connect(uriHost, uriPort, proxy, client)); |
}, VoidToNull())); |
- return FutureOf_ConnectionInfo()._check(completer.future); |
+ return completer.future; |
} |
let currentBadCertificateCallback = client[_badCertificateCallback]; |
function callback(certificate) { |
@@ -42684,7 +43489,7 @@ dart.setSignature(io._ConnectionTarget, { |
}); |
io.BadCertificateCallback = dart.typedef('BadCertificateCallback', () => dart.functionType(core.bool, [io.X509Certificate, core.String, core.int])); |
const _idleTimeout = Symbol('_idleTimeout'); |
-let const$69; |
+let const$72; |
const _connectionTargets = Symbol('_connectionTargets'); |
const _credentials = Symbol('_credentials'); |
const _closing = Symbol('_closing'); |
@@ -42692,7 +43497,7 @@ const _closingForcefully = Symbol('_closingForcefully'); |
const _findProxy = Symbol('_findProxy'); |
const _openUrl = Symbol('_openUrl'); |
const _closeConnections = Symbol('_closeConnections'); |
-let const$70; |
+let const$73; |
const _getConnection = Symbol('_getConnection'); |
io._HttpClient = class _HttpClient extends core.Object { |
get idleTimeout() { |
@@ -42709,7 +43514,7 @@ io._HttpClient = class _HttpClient extends core.Object { |
this[_authenticate] = null; |
this[_authenticateProxy] = null; |
this[_findProxy] = io.HttpClient.findProxyFromEnvironment; |
- this[_idleTimeout] = const$69 || (const$69 = dart.const(new core.Duration({seconds: 15}))); |
+ this[_idleTimeout] = const$72 || (const$72 = dart.const(new core.Duration({seconds: 15}))); |
this[_badCertificateCallback] = null; |
this.maxConnectionsPerHost = null; |
this.autoUncompress = true; |
@@ -42827,7 +43632,7 @@ io._HttpClient = class _HttpClient extends core.Object { |
if (port == 0) { |
port = isSecure ? io.HttpClient.DEFAULT_HTTPS_PORT : io.HttpClient.DEFAULT_HTTP_PORT; |
} |
- let proxyConf = const$70 || (const$70 = dart.const(new io._ProxyConfiguration.direct())); |
+ let proxyConf = const$73 || (const$73 = dart.const(new io._ProxyConfiguration.direct())); |
if (this[_findProxy] != null) { |
try { |
proxyConf = new io._ProxyConfiguration(core.String._check(dart.dcall(this[_findProxy], uri))); |
@@ -43123,7 +43928,7 @@ io._HttpConnection = class _HttpConnection extends dart.mixin(collection.LinkedL |
} |
io._HttpConnection._connections[dartx._set](this[_serviceId], this); |
- this[_httpParser].listenToStream(StreamOfListOfint()._check(this[_socket])); |
+ this[_httpParser].listenToStream(io.Socket.as(this[_socket])); |
this[_subscription$] = this[_httpParser].listen(dart.fn(incoming => { |
this[_httpServer][_markActive](this); |
incoming.dataDone.then(dart.dynamic)(dart.fn(closing => { |
@@ -43145,7 +43950,7 @@ io._HttpConnection = class _HttpConnection extends dart.mixin(collection.LinkedL |
} else { |
this.destroy(); |
} |
- }, dynamicToNull$()), {onError: dart.fn(_ => { |
+ }, SocketToNull()), {onError: dart.fn(_ => { |
this.destroy(); |
}, dynamicToNull$())}); |
outgoing.ignoreBody = request.method == "HEAD"; |
@@ -43176,7 +43981,7 @@ io._HttpConnection = class _HttpConnection extends dart.mixin(collection.LinkedL |
let detachedIncoming = this[_httpParser].detachIncoming(); |
return this[_streamFuture].then(io._DetachedSocket)(dart.fn(_ => { |
io._HttpConnection._connections[dartx.remove](this[_serviceId]); |
- return new io._DetachedSocket(this[_socket], detachedIncoming); |
+ return new io._DetachedSocket(io.Socket._check(this[_socket]), detachedIncoming); |
}, dynamicTo_DetachedSocket())); |
} |
get connectionInfo() { |
@@ -43286,8 +44091,8 @@ const _activeConnections = Symbol('_activeConnections'); |
const _idleConnections = Symbol('_idleConnections'); |
const _serverSocket = Symbol('_serverSocket'); |
const _closeServer = Symbol('_closeServer'); |
-let const$71; |
-let const$72; |
+let const$74; |
+let const$75; |
io._HttpServer = class _HttpServer extends dart.mixin(async.Stream$(io.HttpRequest), io._ServiceObject) { |
static bind(address, port, backlog, v6Only, shared) { |
return io.ServerSocket.bind(address, port, {backlog: backlog, v6Only: v6Only, shared: shared}).then(io._HttpServer)(dart.fn(socket => new io._HttpServer._(socket, true), ServerSocketTo_HttpServer())); |
@@ -43310,7 +44115,7 @@ io._HttpServer = class _HttpServer extends dart.mixin(async.Stream$(io.HttpReque |
this[_controller$0] = null; |
super.new(); |
this[_controller$0] = StreamControllerOfHttpRequest().new({sync: true, onCancel: dart.bind(this, 'close')}); |
- this.idleTimeout = const$71 || (const$71 = dart.const(new core.Duration({seconds: 120}))); |
+ this.idleTimeout = const$74 || (const$74 = dart.const(new core.Duration({seconds: 120}))); |
io._HttpServer._servers[dartx._set](this[_serviceId], this); |
dart.dput(this[_serverSocket], _owner, this); |
} |
@@ -43329,7 +44134,7 @@ io._HttpServer = class _HttpServer extends dart.mixin(async.Stream$(io.HttpReque |
this[_controller$0] = null; |
super.new(); |
this[_controller$0] = StreamControllerOfHttpRequest().new({sync: true, onCancel: dart.bind(this, 'close')}); |
- this.idleTimeout = const$72 || (const$72 = dart.const(new core.Duration({seconds: 120}))); |
+ this.idleTimeout = const$75 || (const$75 = dart.const(new core.Duration({seconds: 120}))); |
io._HttpServer._servers[dartx._set](this[_serviceId], this); |
try { |
dart.dput(this[_serverSocket], _owner, this); |
@@ -43573,8 +44378,8 @@ dart.setSignature(io._Proxy, { |
}), |
getters: () => ({isAuthenticated: dart.definiteFunctionType(core.bool, [])}) |
}); |
-let const$73; |
-let const$74; |
+let const$76; |
+let const$77; |
io._ProxyConfiguration = class _ProxyConfiguration extends core.Object { |
new(configuration) { |
this.proxies = ListOf_Proxy().new(); |
@@ -43629,7 +44434,7 @@ io._ProxyConfiguration = class _ProxyConfiguration extends core.Object { |
}, StringToNull())); |
} |
direct() { |
- this.proxies = const$74 || (const$74 = dart.constList([const$73 || (const$73 = dart.const(new io._Proxy.direct()))], io._Proxy)); |
+ this.proxies = const$77 || (const$77 = dart.constList([const$76 || (const$76 = dart.const(new io._Proxy.direct()))], io._Proxy)); |
} |
}; |
dart.defineNamedConstructor(io._ProxyConfiguration, 'direct'); |
@@ -43681,61 +44486,61 @@ io._DetachedSocket = class _DetachedSocket extends async.Stream$(core.List$(core |
return this[_incoming].listen(onData, {onError: onError, onDone: onDone, cancelOnError: cancelOnError}); |
} |
get encoding() { |
- return convert.Encoding._check(dart.dload(this[_socket], 'encoding')); |
+ return this[_socket].encoding; |
} |
set encoding(value) { |
- dart.dput(this[_socket], 'encoding', value); |
+ this[_socket].encoding = value; |
} |
write(obj) { |
- dart.dsend(this[_socket], 'write', obj); |
+ this[_socket].write(obj); |
} |
writeln(obj) { |
if (obj === void 0) obj = ""; |
- dart.dsend(this[_socket], 'writeln', obj); |
+ this[_socket].writeln(obj); |
} |
writeCharCode(charCode) { |
- dart.dsend(this[_socket], 'writeCharCode', charCode); |
+ this[_socket].writeCharCode(charCode); |
} |
writeAll(objects, separator) { |
if (separator === void 0) separator = ""; |
- dart.dsend(this[_socket], 'writeAll', objects, separator); |
+ this[_socket].writeAll(objects, separator); |
} |
add(bytes) { |
- dart.dsend(this[_socket], 'add', bytes); |
+ this[_socket].add(bytes); |
} |
addError(error, stackTrace) { |
if (stackTrace === void 0) stackTrace = null; |
- return dart.dsend(this[_socket], 'addError', error, stackTrace); |
+ return this[_socket].addError(error, stackTrace); |
} |
addStream(stream) { |
- return FutureOfSocket()._check(dart.dsend(this[_socket], 'addStream', stream)); |
+ return this[_socket].addStream(stream); |
} |
destroy() { |
- dart.dsend(this[_socket], 'destroy'); |
+ this[_socket].destroy(); |
} |
flush() { |
- return async.Future._check(dart.dsend(this[_socket], 'flush')); |
+ return this[_socket].flush(); |
} |
close() { |
- return async.Future._check(dart.dsend(this[_socket], 'close')); |
+ return this[_socket].close(); |
} |
get done() { |
- return FutureOfSocket()._check(dart.dload(this[_socket], 'done')); |
+ return this[_socket].done; |
} |
get port() { |
- return core.int._check(dart.dload(this[_socket], 'port')); |
+ return this[_socket].port; |
} |
get address() { |
- return io.InternetAddress._check(dart.dload(this[_socket], 'address')); |
+ return this[_socket].address; |
} |
get remoteAddress() { |
- return io.InternetAddress._check(dart.dload(this[_socket], 'remoteAddress')); |
+ return this[_socket].remoteAddress; |
} |
get remotePort() { |
- return core.int._check(dart.dload(this[_socket], 'remotePort')); |
+ return this[_socket].remotePort; |
} |
setOption(option, enabled) { |
- return core.bool._check(dart.dsend(this[_socket], 'setOption', option, enabled)); |
+ return this[_socket].setOption(option, enabled); |
} |
[_toJSON$](ref) { |
return core.Map._check(dart.dsend(this[_socket], _toJSON$, ref)); |
@@ -43749,7 +44554,7 @@ io._DetachedSocket[dart.implements] = () => [io.Socket]; |
dart.setSignature(io._DetachedSocket, { |
fields: () => ({ |
[_incoming]: StreamOfListOfint(), |
- [_socket]: dart.dynamic |
+ [_socket]: io.Socket |
}), |
getters: () => ({ |
encoding: dart.definiteFunctionType(convert.Encoding, []), |
@@ -43771,10 +44576,10 @@ dart.setSignature(io._DetachedSocket, { |
writeAll: dart.definiteFunctionType(dart.void, [core.Iterable], [core.String]), |
add: dart.definiteFunctionType(dart.void, [ListOfint()]), |
addError: dart.definiteFunctionType(dart.void, [dart.dynamic], [core.StackTrace]), |
- addStream: dart.definiteFunctionType(async.Future$(io.Socket), [StreamOfListOfint()]), |
+ addStream: dart.definiteFunctionType(async.Future, [StreamOfListOfint()]), |
destroy: dart.definiteFunctionType(dart.void, []), |
flush: dart.definiteFunctionType(async.Future, []), |
- close: dart.definiteFunctionType(async.Future, []), |
+ close: dart.definiteFunctionType(async.Future$(io.Socket), []), |
setOption: dart.definiteFunctionType(core.bool, [io.SocketOption, core.bool]), |
[_toJSON$]: dart.definiteFunctionType(core.Map, [core.bool]) |
}) |
@@ -44215,23 +45020,21 @@ io._HttpDetachedIncoming = class _HttpDetachedIncoming extends async.Stream$(cor |
this.subscription.onError(onError); |
this.subscription.onDone(onDone); |
if (this.bufferedData == null) { |
- return StreamSubscriptionOfListOfint()._check(((() => { |
- this.subscription.resume(); |
- return this.subscription; |
- })())); |
+ this.subscription.resume(); |
+ return this.subscription; |
} |
- let _ = new io._HttpDetachedStreamSubscription(StreamSubscriptionOfListOfint()._check(this.subscription), this.bufferedData, onData); |
+ let _ = new io._HttpDetachedStreamSubscription(this.subscription, this.bufferedData, onData); |
_.resume(); |
return _; |
} else { |
- return StreamOfint().fromIterable(this.bufferedData).listen(onData, {onError: onError, onDone: onDone, cancelOnError: cancelOnError}); |
+ return StreamOfListOfint().fromIterable(JSArrayOfListOfint().of([this.bufferedData])).listen(onData, {onError: onError, onDone: onDone, cancelOnError: cancelOnError}); |
} |
} |
}; |
dart.addSimpleTypeTests(io._HttpDetachedIncoming); |
dart.setSignature(io._HttpDetachedIncoming, { |
fields: () => ({ |
- subscription: async.StreamSubscription, |
+ subscription: StreamSubscriptionOfListOfint(), |
bufferedData: ListOfint() |
}), |
methods: () => ({listen: dart.definiteFunctionType(async.StreamSubscription$(core.List$(core.int)), [_ChunkedConversionCallbackOfListOfint()], {onError: core.Function, onDone: VoidTovoid(), cancelOnError: core.bool})}) |
@@ -44242,7 +45045,7 @@ const _headerField = Symbol('_headerField'); |
const _headerValue = Symbol('_headerValue'); |
const _requestParser = Symbol('_requestParser'); |
const _parserCalled = Symbol('_parserCalled'); |
-const _index$2 = Symbol('_index'); |
+const _index$1 = Symbol('_index'); |
const _httpVersionIndex = Symbol('_httpVersionIndex'); |
const _messageType = Symbol('_messageType'); |
const _statusCodeLength = Symbol('_statusCodeLength'); |
@@ -44283,7 +45086,7 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
this[_requestParser] = requestParser; |
this[_parserCalled] = false; |
this[_buffer$] = null; |
- this[_index$2] = null; |
+ this[_index$1] = null; |
this[_state$1] = null; |
this[_httpVersionIndex] = null; |
this[_messageType] = null; |
@@ -44395,14 +45198,14 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
if (this[_state$1] == io._State.FAILURE) { |
dart.throw(new io.HttpException("Data on failed connection")); |
} |
- while (this[_buffer$] != null && dart.notNull(this[_index$2]) < dart.notNull(this[_buffer$][dartx.length]) && this[_state$1] != io._State.FAILURE && this[_state$1] != io._State.UPGRADED) { |
+ while (this[_buffer$] != null && dart.notNull(this[_index$1]) < dart.notNull(this[_buffer$][dartx.length]) && this[_state$1] != io._State.FAILURE && this[_state$1] != io._State.UPGRADED) { |
if (this[_incoming] != null && dart.test(this[_bodyPaused]) || this[_incoming] == null && dart.test(this[_paused])) { |
this[_parserCalled] = false; |
return; |
} |
let byte = this[_buffer$][dartx._get]((() => { |
- let x = this[_index$2]; |
- this[_index$2] = dart.notNull(x) + 1; |
+ let x = this[_index$1]; |
+ this[_index$1] = dart.notNull(x) + 1; |
return x; |
})()); |
switch (this[_state$1]) { |
@@ -44583,7 +45386,7 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
this[_state$1] = io._State.HEADER_ENDING; |
} else if (byte == io._CharCode.LF) { |
this[_state$1] = io._State.HEADER_ENDING; |
- this[_index$2] = dart.notNull(this[_index$2]) - 1; |
+ this[_index$1] = dart.notNull(this[_index$1]) - 1; |
} else { |
this[_headerField][dartx.add](io._HttpParser._toLowerCaseByte(byte)); |
this[_state$1] = io._State.HEADER_FIELD; |
@@ -44658,7 +45461,7 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
this[_state$1] = io._State.HEADER_ENDING; |
} else if (byte == io._CharCode.LF) { |
this[_state$1] = io._State.HEADER_ENDING; |
- this[_index$2] = dart.notNull(this[_index$2]) - 1; |
+ this[_index$1] = dart.notNull(this[_index$1]) - 1; |
} else { |
this[_headerField][dartx.add](io._HttpParser._toLowerCaseByte(byte)); |
this[_state$1] = io._State.HEADER_FIELD; |
@@ -44732,17 +45535,17 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
} |
case io._State.BODY: |
{ |
- this[_index$2] = dart.notNull(this[_index$2]) - 1; |
- let dataAvailable = dart.notNull(this[_buffer$][dartx.length]) - dart.notNull(this[_index$2]); |
+ this[_index$1] = dart.notNull(this[_index$1]) - 1; |
+ let dataAvailable = dart.notNull(this[_buffer$][dartx.length]) - dart.notNull(this[_index$1]); |
if (dart.notNull(this[_remainingContent]) >= 0 && dart.notNull(dataAvailable) > dart.notNull(this[_remainingContent])) { |
dataAvailable = this[_remainingContent]; |
} |
- let data = typed_data.Uint8List.view(this[_buffer$][dartx.buffer], dart.notNull(this[_buffer$][dartx.offsetInBytes]) + dart.notNull(this[_index$2]), dataAvailable); |
+ let data = typed_data.Uint8List.view(this[_buffer$][dartx.buffer], dart.notNull(this[_buffer$][dartx.offsetInBytes]) + dart.notNull(this[_index$1]), dataAvailable); |
this[_bodyController].add(data); |
if (this[_remainingContent] != -1) { |
this[_remainingContent] = dart.notNull(this[_remainingContent]) - dart.notNull(data[dartx.length]); |
} |
- this[_index$2] = dart.notNull(this[_index$2]) + dart.notNull(data[dartx.length]); |
+ this[_index$1] = dart.notNull(this[_index$1]) + dart.notNull(data[dartx.length]); |
if (this[_remainingContent] == 0) { |
if (!dart.test(this[_chunked])) { |
this[_reset](); |
@@ -44766,7 +45569,7 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
} |
} |
this[_parserCalled] = false; |
- if (this[_buffer$] != null && this[_index$2] == this[_buffer$][dartx.length]) { |
+ if (this[_buffer$] != null && this[_index$1] == this[_buffer$][dartx.length]) { |
this[_releaseBuffer](); |
if (this[_state$1] != io._State.UPGRADED && this[_state$1] != io._State.FAILURE) { |
this[_socketSubscription].resume(); |
@@ -44777,7 +45580,7 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
this[_socketSubscription].pause(); |
dart.assert(this[_buffer$] == null); |
this[_buffer$] = typed_data.Uint8List._check(buffer); |
- this[_index$2] = 0; |
+ this[_index$1] = 0; |
this[_parse](); |
} |
[_onDone$]() { |
@@ -44850,8 +45653,8 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
} |
readUnparsedData() { |
if (this[_buffer$] == null) return null; |
- if (this[_index$2] == this[_buffer$][dartx.length]) return null; |
- let result = this[_buffer$][dartx.sublist](this[_index$2]); |
+ if (this[_index$1] == this[_buffer$][dartx.length]) return null; |
+ let result = this[_buffer$][dartx.sublist](this[_index$1]); |
this[_releaseBuffer](); |
return result; |
} |
@@ -44876,7 +45679,7 @@ io._HttpParser = class _HttpParser extends async.Stream$(io._HttpIncoming) { |
} |
[_releaseBuffer]() { |
this[_buffer$] = null; |
- this[_index$2] = null; |
+ this[_index$1] = null; |
} |
static _isTokenChar(byte) { |
return dart.notNull(byte) > 31 && dart.notNull(byte) < 128 && !dart.test(io._Const.SEPARATOR_MAP[dartx._get](byte)); |
@@ -44996,7 +45799,7 @@ dart.setSignature(io._HttpParser, { |
fields: () => ({ |
[_parserCalled]: core.bool, |
[_buffer$]: typed_data.Uint8List, |
- [_index$2]: core.int, |
+ [_index$1]: core.int, |
[_requestParser]: core.bool, |
[_state$1]: core.int, |
[_httpVersionIndex]: core.int, |
@@ -45016,7 +45819,7 @@ dart.setSignature(io._HttpParser, { |
[_remainingContent]: core.int, |
[_headers]: io._HttpHeaders, |
[_incoming]: io._HttpIncoming, |
- [_socketSubscription]: async.StreamSubscription, |
+ [_socketSubscription]: StreamSubscriptionOfListOfint(), |
[_paused]: core.bool, |
[_bodyPaused]: core.bool, |
[_controller$0]: StreamControllerOf_HttpIncoming(), |
@@ -45059,7 +45862,7 @@ dart.setSignature(io._HttpParser, { |
names: ['_isTokenChar', '_isValueChar', '_tokenizeFieldValue', '_toLowerCaseByte'] |
}); |
io._DART_SESSION_ID = "DARTSESSID"; |
-const _data$ = Symbol('_data'); |
+const _data$0 = Symbol('_data'); |
const _lastSeen = Symbol('_lastSeen'); |
const _timeoutCallback = Symbol('_timeoutCallback'); |
const _prev = Symbol('_prev'); |
@@ -45069,7 +45872,7 @@ const _sessions = Symbol('_sessions'); |
const _bumpToEnd = Symbol('_bumpToEnd'); |
io._HttpSession = class _HttpSession extends core.Object { |
new(sessionManager, id) { |
- this[_data$] = collection.HashMap.new(); |
+ this[_data$0] = collection.HashMap.new(); |
this[_sessionManager] = sessionManager; |
this.id = id; |
this[_lastSeen] = new core.DateTime.now(); |
@@ -45098,50 +45901,50 @@ io._HttpSession = class _HttpSession extends core.Object { |
this[_timeoutCallback] = callback; |
} |
containsValue(value) { |
- return this[_data$][dartx.containsValue](value); |
+ return this[_data$0][dartx.containsValue](value); |
} |
containsKey(key) { |
- return this[_data$][dartx.containsKey](key); |
+ return this[_data$0][dartx.containsKey](key); |
} |
_get(key) { |
- return this[_data$][dartx._get](key); |
+ return this[_data$0][dartx._get](key); |
} |
_set(key, value) { |
- this[_data$][dartx._set](key, value); |
+ this[_data$0][dartx._set](key, value); |
return value; |
} |
putIfAbsent(key, ifAbsent) { |
- return this[_data$][dartx.putIfAbsent](key, ifAbsent); |
+ return this[_data$0][dartx.putIfAbsent](key, ifAbsent); |
} |
addAll(other) { |
- return this[_data$][dartx.addAll](other); |
+ return this[_data$0][dartx.addAll](other); |
} |
remove(key) { |
- return this[_data$][dartx.remove](key); |
+ return this[_data$0][dartx.remove](key); |
} |
clear() { |
- this[_data$][dartx.clear](); |
+ this[_data$0][dartx.clear](); |
} |
forEach(f) { |
- this[_data$][dartx.forEach](f); |
+ this[_data$0][dartx.forEach](f); |
} |
get keys() { |
- return this[_data$][dartx.keys]; |
+ return this[_data$0][dartx.keys]; |
} |
get values() { |
- return this[_data$][dartx.values]; |
+ return this[_data$0][dartx.values]; |
} |
get length() { |
- return this[_data$][dartx.length]; |
+ return this[_data$0][dartx.length]; |
} |
get isEmpty() { |
- return this[_data$][dartx.isEmpty]; |
+ return this[_data$0][dartx.isEmpty]; |
} |
get isNotEmpty() { |
- return this[_data$][dartx.isNotEmpty]; |
+ return this[_data$0][dartx.isNotEmpty]; |
} |
toString() { |
- return dart.str`HttpSession id:${this.id} ${this[_data$]}`; |
+ return dart.str`HttpSession id:${this.id} ${this[_data$0]}`; |
} |
}; |
io._HttpSession[dart.implements] = () => [io.HttpSession]; |
@@ -45155,7 +45958,7 @@ dart.setSignature(io._HttpSession, { |
[_prev]: io._HttpSession, |
[_next$1]: io._HttpSession, |
id: core.String, |
- [_data$]: core.Map |
+ [_data$0]: core.Map |
}), |
getters: () => ({ |
lastSeen: dart.definiteFunctionType(core.DateTime, []), |
@@ -45326,7 +46129,7 @@ io._IOResourceInfo = class _IOResourceInfo extends core.Object { |
this.id = io._IOResourceInfo.getNextID(); |
} |
get referenceValueMap() { |
- return dart.map({type: dart.str`@${this.type}`, id: this.id, name: this.name}, core.String, core.String); |
+ return dart.map({type: dart.str`@${this.type}`, id: this.id, name: this.name}, core.String, core.Object); |
} |
static getNextID() { |
return (() => { |
@@ -45341,7 +46144,7 @@ dart.setSignature(io._IOResourceInfo, { |
type: core.String, |
id: core.int |
}), |
- getters: () => ({referenceValueMap: dart.definiteFunctionType(core.Map$(core.String, core.String), [])}), |
+ getters: () => ({referenceValueMap: dart.definiteFunctionType(core.Map$(core.String, dart.dynamic), [])}), |
statics: () => ({getNextID: dart.definiteFunctionType(core.int, [])}), |
names: ['getNextID'] |
}); |
@@ -45382,7 +46185,7 @@ io._ReadWriteResourceInfo = class _ReadWriteResourceInfo extends io._IOResourceI |
super.new(type); |
} |
get fullValueMap() { |
- return dart.map({type: this.type, id: this.id, name: this.name, totalRead: this.totalRead, totalWritten: this.totalWritten, readCount: this.readCount, writeCount: this.writeCount, lastRead: this.lastRead, lastWrite: this.lastWrite}, core.String, core.String); |
+ return dart.map({type: this.type, id: this.id, name: this.name, totalRead: this.totalRead, totalWritten: this.totalWritten, readCount: this.readCount, writeCount: this.writeCount, lastRead: this.lastRead, lastWrite: this.lastWrite}, core.String, core.Object); |
} |
}; |
dart.setSignature(io._ReadWriteResourceInfo, { |
@@ -45394,7 +46197,7 @@ dart.setSignature(io._ReadWriteResourceInfo, { |
lastRead: core.double, |
lastWrite: core.double |
}), |
- getters: () => ({fullValueMap: dart.definiteFunctionType(core.Map$(core.String, core.String), [])}), |
+ getters: () => ({fullValueMap: dart.definiteFunctionType(core.Map$(core.String, dart.dynamic), [])}), |
methods: () => ({ |
addRead: dart.definiteFunctionType(dart.void, [core.int]), |
didRead: dart.definiteFunctionType(dart.void, []), |
@@ -45416,7 +46219,7 @@ io._FileResourceInfo = class _FileResourceInfo extends io._ReadWriteResourceInfo |
io._FileResourceInfo.openFiles[dartx.remove](info.id); |
} |
static getOpenFilesList() { |
- return ListOfMapOfString$String().from(io._FileResourceInfo.openFiles[dartx.values][dartx.map](MapOfString$String())(dart.fn(e => e.referenceValueMap, _FileResourceInfoToMapOfString$String()))); |
+ return ListOfMapOfString$String().from(io._FileResourceInfo.openFiles[dartx.values][dartx.map](MapOfString$dynamic())(dart.fn(e => e.referenceValueMap, _FileResourceInfoToMapOfString$dynamic()))); |
} |
static getOpenFiles(func, params) { |
dart.assert(dart.equals(func, 'ext.dart.io.getOpenFiles')); |
@@ -45425,8 +46228,7 @@ io._FileResourceInfo = class _FileResourceInfo extends io._ReadWriteResourceInfo |
return FutureOfServiceExtensionResponse().value(new developer.ServiceExtensionResponse.result(json)); |
} |
getFileInfoMap() { |
- let result = this.fullValueMap; |
- return result; |
+ return this.fullValueMap; |
} |
static getFileInfoMapByID(func, params) { |
dart.assert(dart.dsend(params, 'containsKey', 'id')); |
@@ -45442,7 +46244,7 @@ io._FileResourceInfo = class _FileResourceInfo extends io._ReadWriteResourceInfo |
dart.setSignature(io._FileResourceInfo, { |
fields: () => ({file: dart.dynamic}), |
getters: () => ({name: dart.definiteFunctionType(core.String, [])}), |
- methods: () => ({getFileInfoMap: dart.definiteFunctionType(core.Map$(core.String, core.String), [])}), |
+ methods: () => ({getFileInfoMap: dart.definiteFunctionType(core.Map$(core.String, dart.dynamic), [])}), |
statics: () => ({ |
FileOpened: dart.definiteFunctionType(dart.dynamic, [io._FileResourceInfo]), |
FileClosed: dart.definiteFunctionType(dart.dynamic, [io._FileResourceInfo]), |
@@ -45469,13 +46271,13 @@ io._ProcessResourceInfo = class _ProcessResourceInfo extends io._IOResourceInfo |
io._ProcessResourceInfo.ProcessStarted(this); |
} |
get name() { |
- return core.String._check(dart.dload(this.process, _path$)); |
+ return core.String._check(dart.dload(this.process, _path)); |
} |
stopped() { |
io._ProcessResourceInfo.ProcessStopped(this); |
} |
get fullValueMap() { |
- return dart.map({type: this.type, id: this.id, name: this.name, pid: core.String._check(dart.dload(this.process, 'pid')), startedAt: this.startedAt, arguments: core.String._check(dart.dload(this.process, _arguments$0)), workingDirectory: core.String._check(dart.dload(this.process, _workingDirectory) == null ? '.' : dart.dload(this.process, _workingDirectory))}, core.String, core.String); |
+ return dart.map({type: this.type, id: this.id, name: this.name, pid: dart.dload(this.process, 'pid'), startedAt: this.startedAt, arguments: dart.dload(this.process, _arguments$0), workingDirectory: dart.dload(this.process, _workingDirectory) == null ? '.' : dart.dload(this.process, _workingDirectory)}, core.String, core.Object); |
} |
static ProcessStarted(info) { |
dart.assert(!dart.test(io._ProcessResourceInfo.startedProcesses[dartx.containsKey](info.id))); |
@@ -45486,7 +46288,7 @@ io._ProcessResourceInfo = class _ProcessResourceInfo extends io._IOResourceInfo |
io._ProcessResourceInfo.startedProcesses[dartx.remove](info.id); |
} |
static getStartedProcessesList() { |
- return ListOfMapOfString$String().from(io._ProcessResourceInfo.startedProcesses[dartx.values][dartx.map](MapOfString$String())(dart.fn(e => e.referenceValueMap, _ProcessResourceInfoToMapOfString$String()))); |
+ return ListOfMapOfString$String().from(io._ProcessResourceInfo.startedProcesses[dartx.values][dartx.map](MapOfString$dynamic())(dart.fn(e => e.referenceValueMap, _ProcessResourceInfoToMapOfString$dynamic()))); |
} |
static getStartedProcesses(func, params) { |
dart.assert(func == 'ext.dart.io.getProcesses'); |
@@ -45508,7 +46310,7 @@ dart.setSignature(io._ProcessResourceInfo, { |
}), |
getters: () => ({ |
name: dart.definiteFunctionType(core.String, []), |
- fullValueMap: dart.definiteFunctionType(core.Map$(core.String, core.String), []) |
+ fullValueMap: dart.definiteFunctionType(core.Map$(core.String, dart.dynamic), []) |
}), |
methods: () => ({stopped: dart.definiteFunctionType(dart.void, [])}), |
statics: () => ({ |
@@ -45548,18 +46350,18 @@ io._SocketResourceInfo = class _SocketResourceInfo extends io._ReadWriteResource |
return dart.str`${dart.dload(dart.dload(this.socket, 'address'), 'host')}:${dart.dload(this.socket, 'port')}${remote}`; |
} |
static getOpenSocketsList() { |
- return ListOfMapOfString$String().from(io._SocketResourceInfo.openSockets[dartx.values][dartx.map](MapOfString$String())(dart.fn(e => e.referenceValueMap, _SocketResourceInfoToMapOfString$String()))); |
+ return ListOfMapOfString$String().from(io._SocketResourceInfo.openSockets[dartx.values][dartx.map](MapOfString$dynamic())(dart.fn(e => e.referenceValueMap, _SocketResourceInfoToMapOfString$dynamic()))); |
} |
getSocketInfoMap() { |
let result = this.fullValueMap; |
result[dartx._set]('socketType', dart.test(dart.dload(this.socket, 'isTcp')) ? io._SocketResourceInfo.TCP_STRING : io._SocketResourceInfo.UDP_STRING); |
- result[dartx._set]('listening', core.String._check(dart.dload(this.socket, 'isListening'))); |
- result[dartx._set]('host', core.String._check(dart.dload(dart.dload(this.socket, 'address'), 'host'))); |
- result[dartx._set]('port', core.String._check(dart.dload(this.socket, 'port'))); |
+ result[dartx._set]('listening', dart.dload(this.socket, 'isListening')); |
+ result[dartx._set]('host', dart.dload(dart.dload(this.socket, 'address'), 'host')); |
+ result[dartx._set]('port', dart.dload(this.socket, 'port')); |
if (!dart.test(dart.dload(this.socket, 'isListening'))) { |
try { |
- result[dartx._set]('remoteHost', core.String._check(dart.dload(dart.dload(this.socket, 'remoteAddress'), 'host'))); |
- result[dartx._set]('remotePort', core.String._check(dart.dload(this.socket, 'remotePort'))); |
+ result[dartx._set]('remoteHost', dart.dload(dart.dload(this.socket, 'remoteAddress'), 'host')); |
+ result[dartx._set]('remotePort', dart.dload(this.socket, 'remotePort')); |
} catch (e) { |
result[dartx._set]('remotePort', 'NA'); |
result[dartx._set]('remoteHost', 'NA'); |
@@ -45569,7 +46371,7 @@ io._SocketResourceInfo = class _SocketResourceInfo extends io._ReadWriteResource |
result[dartx._set]('remotePort', 'NA'); |
result[dartx._set]('remoteHost', 'NA'); |
} |
- result[dartx._set]('addressType', core.String._check(dart.dload(dart.dload(dart.dload(this.socket, 'address'), 'type'), 'name'))); |
+ result[dartx._set]('addressType', dart.dload(dart.dload(dart.dload(this.socket, 'address'), 'type'), 'name')); |
return result; |
} |
static getSocketInfoMapByID(func, params) { |
@@ -45597,7 +46399,7 @@ io._SocketResourceInfo = class _SocketResourceInfo extends io._ReadWriteResource |
dart.setSignature(io._SocketResourceInfo, { |
fields: () => ({socket: dart.dynamic}), |
getters: () => ({name: dart.definiteFunctionType(core.String, [])}), |
- methods: () => ({getSocketInfoMap: dart.definiteFunctionType(core.Map$(core.String, core.String), [])}), |
+ methods: () => ({getSocketInfoMap: dart.definiteFunctionType(core.Map$(core.String, dart.dynamic), [])}), |
statics: () => ({ |
getOpenSocketsList: dart.definiteFunctionType(core.Iterable$(core.Map$(core.String, core.String)), []), |
getSocketInfoMapByID: dart.definiteFunctionType(async.Future$(developer.ServiceExtensionResponse), [core.String, MapOfString$String()]), |
@@ -45639,33 +46441,36 @@ io._FILE_SET_POSITION = 9; |
io._FILE_TRUNCATE = 10; |
io._FILE_LENGTH = 11; |
io._FILE_LENGTH_FROM_PATH = 12; |
-io._FILE_LAST_MODIFIED = 13; |
-io._FILE_FLUSH = 14; |
-io._FILE_READ_BYTE = 15; |
-io._FILE_WRITE_BYTE = 16; |
-io._FILE_READ = 17; |
-io._FILE_READ_INTO = 18; |
-io._FILE_WRITE_FROM = 19; |
-io._FILE_CREATE_LINK = 20; |
-io._FILE_DELETE_LINK = 21; |
-io._FILE_RENAME_LINK = 22; |
-io._FILE_LINK_TARGET = 23; |
-io._FILE_TYPE = 24; |
-io._FILE_IDENTICAL = 25; |
-io._FILE_STAT = 26; |
-io._FILE_LOCK = 27; |
-io._SOCKET_LOOKUP = 28; |
-io._SOCKET_LIST_INTERFACES = 29; |
-io._SOCKET_REVERSE_LOOKUP = 30; |
-io._DIRECTORY_CREATE = 31; |
-io._DIRECTORY_DELETE = 32; |
-io._DIRECTORY_EXISTS = 33; |
-io._DIRECTORY_CREATE_TEMP = 34; |
-io._DIRECTORY_LIST_START = 35; |
-io._DIRECTORY_LIST_NEXT = 36; |
-io._DIRECTORY_LIST_STOP = 37; |
-io._DIRECTORY_RENAME = 38; |
-io._SSL_PROCESS_FILTER = 39; |
+io._FILE_LAST_ACCESSED = 13; |
+io._FILE_SET_LAST_ACCESSED = 14; |
+io._FILE_LAST_MODIFIED = 15; |
+io._FILE_SET_LAST_MODIFIED = 16; |
+io._FILE_FLUSH = 17; |
+io._FILE_READ_BYTE = 18; |
+io._FILE_WRITE_BYTE = 19; |
+io._FILE_READ = 20; |
+io._FILE_READ_INTO = 21; |
+io._FILE_WRITE_FROM = 22; |
+io._FILE_CREATE_LINK = 23; |
+io._FILE_DELETE_LINK = 24; |
+io._FILE_RENAME_LINK = 25; |
+io._FILE_LINK_TARGET = 26; |
+io._FILE_TYPE = 27; |
+io._FILE_IDENTICAL = 28; |
+io._FILE_STAT = 29; |
+io._FILE_LOCK = 30; |
+io._SOCKET_LOOKUP = 31; |
+io._SOCKET_LIST_INTERFACES = 32; |
+io._SOCKET_REVERSE_LOOKUP = 33; |
+io._DIRECTORY_CREATE = 34; |
+io._DIRECTORY_DELETE = 35; |
+io._DIRECTORY_EXISTS = 36; |
+io._DIRECTORY_CREATE_TEMP = 37; |
+io._DIRECTORY_LIST_START = 38; |
+io._DIRECTORY_LIST_NEXT = 39; |
+io._DIRECTORY_LIST_STOP = 40; |
+io._DIRECTORY_RENAME = 41; |
+io._SSL_PROCESS_FILTER = 42; |
io._IOService = class _IOService extends core.Object { |
static _dispatch(request, data) { |
dart.throw(new core.UnsupportedError("_IOService._dispatch")); |
@@ -45705,12 +46510,6 @@ io._Link = class _Link extends io.FileSystemEntity { |
get absolute() { |
return io.Link.new(this[_absolutePath]); |
} |
- stat() { |
- return io.FileStat.stat(this.path); |
- } |
- statSync() { |
- return io.FileStat.statSync(this.path); |
- } |
create(target, opts) { |
let recursive = opts && 'recursive' in opts ? opts.recursive : false; |
if (dart.test(io.Platform.isWindows)) { |
@@ -45834,8 +46633,6 @@ dart.setSignature(io._Link, { |
methods: () => ({ |
exists: dart.definiteFunctionType(async.Future$(core.bool), []), |
existsSync: dart.definiteFunctionType(core.bool, []), |
- stat: dart.definiteFunctionType(async.Future$(io.FileStat), []), |
- statSync: dart.definiteFunctionType(io.FileStat, []), |
create: dart.definiteFunctionType(async.Future$(io.Link), [core.String], {recursive: core.bool}), |
createSync: dart.definiteFunctionType(dart.void, [core.String], {recursive: core.bool}), |
[_makeWindowsLinkTarget]: dart.definiteFunctionType(core.String, [core.String]), |
@@ -45921,6 +46718,9 @@ dart.defineLazy(io.Platform, { |
}, |
get isIOS() { |
return io.Platform._operatingSystem == "ios"; |
+ }, |
+ get isFuchsia() { |
+ return io.Platform._operatingSystem == "fuchsia"; |
} |
}); |
io._Platform = class _Platform extends core.Object { |
@@ -45982,14 +46782,17 @@ io._Platform = class _Platform extends core.Object { |
let env = io._Platform._environment(); |
if (!io.OSError.is(env)) { |
let isWindows = io._Platform.operatingSystem == 'windows'; |
- let result = isWindows ? new io._CaseInsensitiveStringMap() : core.Map.new(); |
+ let result = isWindows ? new (_CaseInsensitiveStringMapOfString())() : MapOfString$String().new(); |
for (let str of core.Iterable._check(env)) { |
+ if (str == null) { |
+ continue; |
+ } |
let equalsIndex = dart.dsend(str, 'indexOf', '='); |
if (dart.test(dart.dsend(equalsIndex, '>', 0))) { |
- result[dartx._set](dart.dsend(str, 'substring', 0, equalsIndex), dart.dsend(str, 'substring', dart.dsend(equalsIndex, '+', 1))); |
+ result[dartx._set](core.String._check(dart.dsend(str, 'substring', 0, equalsIndex)), core.String._check(dart.dsend(str, 'substring', dart.dsend(equalsIndex, '+', 1)))); |
} |
} |
- io._Platform._environmentCache = new (UnmodifiableMapViewOfString$String())(MapOfString$String()._check(result)); |
+ io._Platform._environmentCache = new (UnmodifiableMapViewOfString$String())(result); |
} else { |
io._Platform._environmentCache = env; |
} |
@@ -45997,7 +46800,7 @@ io._Platform = class _Platform extends core.Object { |
if (io.OSError.is(io._Platform._environmentCache)) { |
dart.throw(io._Platform._environmentCache); |
} else { |
- return MapOfString$String()._check(io._Platform._environmentCache); |
+ return MapOfString$String().as(io._Platform._environmentCache); |
} |
} |
static get version() { |
@@ -46045,6 +46848,7 @@ io._CaseInsensitiveStringMap$ = dart.generic(V => { |
let MapOfString$V = () => (MapOfString$V = dart.constFn(core.Map$(core.String, V)))(); |
let VoidToV = () => (VoidToV = dart.constFn(dart.functionType(V, [])))(); |
let StringAndVTovoid = () => (StringAndVTovoid = dart.constFn(dart.functionType(dart.void, [core.String, V])))(); |
+ let StringAndVToV = () => (StringAndVToV = dart.constFn(dart.definiteFunctionType(V, [core.String, V])))(); |
class _CaseInsensitiveStringMap extends core.Object { |
new() { |
this[_map$1] = MapOfString$V().new(); |
@@ -46068,7 +46872,8 @@ io._CaseInsensitiveStringMap$ = dart.generic(V => { |
return this[_map$1][dartx.putIfAbsent](key[dartx.toUpperCase](), ifAbsent); |
} |
addAll(other) { |
- other[dartx.forEach](dart.fn((key, value) => this._set(core.String._check(dart.dsend(key, 'toUpperCase')), V._check(value)), dynamicAnddynamicTovoid$())); |
+ MapOfString$V()._check(other); |
+ other[dartx.forEach](dart.fn((key, value) => this._set(key[dartx.toUpperCase](), value), StringAndVToV())); |
} |
remove(key) { |
return typeof key == 'string' ? this[_map$1][dartx.remove](key[dartx.toUpperCase]()) : null; |
@@ -46115,7 +46920,7 @@ io._CaseInsensitiveStringMap$ = dart.generic(V => { |
_get: dart.definiteFunctionType(V, [core.Object]), |
_set: dart.definiteFunctionType(dart.void, [core.String, V]), |
putIfAbsent: dart.definiteFunctionType(V, [core.String, VoidToV()]), |
- addAll: dart.definiteFunctionType(dart.void, [core.Map]), |
+ addAll: dart.definiteFunctionType(dart.void, [MapOfString$V()]), |
remove: dart.definiteFunctionType(V, [core.Object]), |
clear: dart.definiteFunctionType(dart.void, []), |
forEach: dart.definiteFunctionType(dart.void, [StringAndVTovoid()]) |
@@ -46223,9 +47028,6 @@ dart.defineEnumValues(io.ProcessStartMode, [ |
'DETACHED_WITH_STDIO' |
]); |
io.Process = class Process extends core.Object { |
- new() { |
- this.exitCode = null; |
- } |
static start(executable, arguments$, opts) { |
let workingDirectory = opts && 'workingDirectory' in opts ? opts.workingDirectory : null; |
let environment = opts && 'environment' in opts ? opts.environment : null; |
@@ -46258,7 +47060,6 @@ io.Process = class Process extends core.Object { |
} |
}; |
dart.setSignature(io.Process, { |
- fields: () => ({exitCode: FutureOfint()}), |
statics: () => ({ |
start: dart.definiteFunctionType(async.Future$(io.Process), [core.String, ListOfString()], {workingDirectory: core.String, environment: MapOfString$String(), includeParentEnvironment: core.bool, runInShell: core.bool, mode: io.ProcessStartMode}), |
run: dart.definiteFunctionType(async.Future$(io.ProcessResult), [core.String, ListOfString()], {workingDirectory: core.String, environment: MapOfString$String(), includeParentEnvironment: core.bool, runInShell: core.bool, stdoutEncoding: convert.Encoding, stderrEncoding: convert.Encoding}), |
@@ -46454,22 +47255,14 @@ io.SecureSocket = class SecureSocket extends core.Object { |
let host = opts && 'host' in opts ? opts.host : null; |
let context = opts && 'context' in opts ? opts.context : null; |
let onBadCertificate = opts && 'onBadCertificate' in opts ? opts.onBadCertificate : null; |
- let completer = async.Completer.new(); |
- dart.dsend(dart.dsend(dart.dsend(socket, _detachRaw), 'then', dart.fn(detachedRaw => io.RawSecureSocket.secure(io.RawSocket._check(dart.dindex(detachedRaw, 0)), {subscription: async.StreamSubscription._check(dart.dindex(detachedRaw, 1)), host: host, context: context, onBadCertificate: onBadCertificate}), dynamicToFutureOfRawSecureSocket())), 'then', dart.fn(raw => { |
- completer.complete(io.SecureSocket._(io.RawSecureSocket._check(raw))); |
- }, dynamicToNull$())); |
- return FutureOfSecureSocket()._check(completer.future); |
+ return async.Future.as(dart.dsend(socket, _detachRaw)).then(io.RawSecureSocket)(dart.fn(detachedRaw => io.RawSecureSocket.secure(io.RawSocket.as(dart.dindex(detachedRaw, 0)), {subscription: StreamSubscriptionOfRawSocketEvent().as(dart.dindex(detachedRaw, 1)), host: host, context: context, onBadCertificate: onBadCertificate}), dynamicToFutureOfRawSecureSocket())).then(io.SecureSocket)(dart.fn(raw => io.SecureSocket._(raw), RawSecureSocketToSecureSocket())); |
} |
static secureServer(socket, context, opts) { |
let bufferedData = opts && 'bufferedData' in opts ? opts.bufferedData : null; |
let requestClientCertificate = opts && 'requestClientCertificate' in opts ? opts.requestClientCertificate : false; |
let requireClientCertificate = opts && 'requireClientCertificate' in opts ? opts.requireClientCertificate : false; |
let supportedProtocols = opts && 'supportedProtocols' in opts ? opts.supportedProtocols : null; |
- let completer = async.Completer.new(); |
- dart.dsend(dart.dsend(dart.dsend(socket, _detachRaw), 'then', dart.fn(detachedRaw => io.RawSecureSocket.secureServer(io.RawSocket._check(dart.dindex(detachedRaw, 0)), context, {subscription: async.StreamSubscription._check(dart.dindex(detachedRaw, 1)), bufferedData: bufferedData, requestClientCertificate: requestClientCertificate, requireClientCertificate: requireClientCertificate, supportedProtocols: supportedProtocols}), dynamicToFutureOfRawSecureSocket())), 'then', dart.fn(raw => { |
- completer.complete(io.SecureSocket._(io.RawSecureSocket._check(raw))); |
- }, dynamicToNull$())); |
- return FutureOfSecureSocket()._check(completer.future); |
+ return async.Future.as(dart.dsend(socket, _detachRaw)).then(io.RawSecureSocket)(dart.fn(detachedRaw => io.RawSecureSocket.secureServer(io.RawSocket.as(dart.dindex(detachedRaw, 0)), context, {subscription: StreamSubscriptionOfRawSocketEvent().as(dart.dindex(detachedRaw, 1)), bufferedData: bufferedData, requestClientCertificate: requestClientCertificate, requireClientCertificate: requireClientCertificate, supportedProtocols: supportedProtocols}), dynamicToFutureOfRawSecureSocket())).then(io.SecureSocket)(dart.fn(raw => io.SecureSocket._(raw), RawSecureSocketToSecureSocket())); |
} |
}; |
io.SecureSocket[dart.implements] = () => [io.Socket]; |
@@ -46565,8 +47358,8 @@ io.RawSecureSocket[dart.implements] = () => [io.RawSocket]; |
dart.setSignature(io.RawSecureSocket, { |
statics: () => ({ |
connect: dart.definiteFunctionType(async.Future$(io.RawSecureSocket), [dart.dynamic, core.int], {context: io.SecurityContext, onBadCertificate: X509CertificateTobool(), supportedProtocols: ListOfString()}), |
- secure: dart.definiteFunctionType(async.Future$(io.RawSecureSocket), [io.RawSocket], {subscription: async.StreamSubscription, host: dart.dynamic, context: io.SecurityContext, onBadCertificate: X509CertificateTobool(), supportedProtocols: ListOfString()}), |
- secureServer: dart.definiteFunctionType(async.Future$(io.RawSecureSocket), [io.RawSocket, io.SecurityContext], {subscription: async.StreamSubscription, bufferedData: ListOfint(), requestClientCertificate: core.bool, requireClientCertificate: core.bool, supportedProtocols: ListOfString()}) |
+ secure: dart.definiteFunctionType(async.Future$(io.RawSecureSocket), [io.RawSocket], {subscription: StreamSubscriptionOfRawSocketEvent(), host: dart.dynamic, context: io.SecurityContext, onBadCertificate: X509CertificateTobool(), supportedProtocols: ListOfString()}), |
+ secureServer: dart.definiteFunctionType(async.Future$(io.RawSecureSocket), [io.RawSocket, io.SecurityContext], {subscription: StreamSubscriptionOfRawSocketEvent(), bufferedData: ListOfint(), requestClientCertificate: core.bool, requireClientCertificate: core.bool, supportedProtocols: ListOfString()}) |
}), |
names: ['connect', 'secure', 'secureServer'] |
}); |
@@ -46737,13 +47530,13 @@ const _tryFilter = Symbol('_tryFilter'); |
const _pushAllFilterStages = Symbol('_pushAllFilterStages'); |
const _readSocketOrBufferedData = Symbol('_readSocketOrBufferedData'); |
const _sendReadEvent = Symbol('_sendReadEvent'); |
-let const$75; |
+let const$78; |
io.RawSocketEvent = class RawSocketEvent extends core.Object { |
_(value) { |
this[_value$1] = value; |
} |
toString() { |
- return (const$75 || (const$75 = dart.constList(['RawSocketEvent:READ', 'RawSocketEvent:WRITE', 'RawSocketEvent:READ_CLOSED', 'RawSocketEvent:CLOSED'], core.String)))[dartx._get](this[_value$1]); |
+ return (const$78 || (const$78 = dart.constList(['RawSocketEvent:READ', 'RawSocketEvent:WRITE', 'RawSocketEvent:READ_CLOSED', 'RawSocketEvent:CLOSED'], core.String)))[dartx._get](this[_value$1]); |
} |
}; |
dart.defineNamedConstructor(io.RawSocketEvent, '_'); |
@@ -46784,12 +47577,12 @@ io._RawSecureSocket = class _RawSecureSocket extends async.Stream$(io.RawSocketE |
if (host != null) { |
address = io.InternetAddress._cloneWithNewHost(address, core.String._check(host)); |
} |
- return new io._RawSecureSocket(address, requestedPort, is_server, context, socket, StreamSubscriptionOfRawSocketEvent()._check(subscription), bufferedData, requestClientCertificate, requireClientCertificate, onBadCertificate, supportedProtocols)[_handshakeComplete].future; |
+ return new io._RawSecureSocket(address, requestedPort, is_server, context, socket, subscription, bufferedData, requestClientCertificate, requireClientCertificate, onBadCertificate, supportedProtocols)[_handshakeComplete].future; |
} |
new(address, requestedPort, is_server, context, socket, socketSubscription, bufferedData, requestClientCertificate, requireClientCertificate, onBadCertificate, supportedProtocols) { |
this[_handshakeComplete] = CompleterOf_RawSecureSocket().new(); |
this[_status] = io._RawSecureSocket.HANDSHAKE; |
- this[_closeCompleter] = async.Completer.new(); |
+ this[_closeCompleter] = CompleterOfRawSecureSocket().new(); |
this[_filterStatus] = new io._FilterStatus(); |
this[_secureFilter] = io._SecureFilter.new(); |
this.address = address; |
@@ -46899,7 +47692,7 @@ io._RawSecureSocket = class _RawSecureSocket extends async.Stream$(io.RawSocketE |
} |
close() { |
this.shutdown(io.SocketDirection.BOTH); |
- return FutureOfRawSecureSocket()._check(this[_closeCompleter].future); |
+ return this[_closeCompleter].future; |
} |
[_completeCloseCompleter](dummy) { |
if (dummy === void 0) dummy = null; |
@@ -47345,7 +48138,7 @@ dart.setSignature(io._RawSecureSocket, { |
[_socketClosedWrite]: core.bool, |
[_closedRead]: core.bool, |
[_closedWrite]: core.bool, |
- [_closeCompleter]: async.Completer, |
+ [_closeCompleter]: CompleterOfRawSecureSocket(), |
[_filterStatus]: io._FilterStatus, |
[_connectPending]: core.bool, |
[_filterPending]: core.bool, |
@@ -47371,7 +48164,7 @@ dart.setSignature(io._RawSecureSocket, { |
listen: dart.definiteFunctionType(async.StreamSubscription$(io.RawSocketEvent), [RawSocketEventTovoid()], {onError: core.Function, onDone: VoidTovoid(), cancelOnError: core.bool}), |
available: dart.definiteFunctionType(core.int, []), |
close: dart.definiteFunctionType(async.Future$(io.RawSecureSocket), []), |
- [_completeCloseCompleter]: dart.definiteFunctionType(dart.void, [], [dart.dynamic]), |
+ [_completeCloseCompleter]: dart.definiteFunctionType(dart.void, [], [io.RawSocket]), |
[_close$0]: dart.definiteFunctionType(dart.void, []), |
shutdown: dart.definiteFunctionType(dart.void, [io.SocketDirection]), |
read: dart.definiteFunctionType(core.List$(core.int), [], [core.int]), |
@@ -47401,7 +48194,7 @@ dart.setSignature(io._RawSecureSocket, { |
}), |
statics: () => ({ |
_isBufferEncrypted: dart.definiteFunctionType(core.bool, [core.int]), |
- connect: dart.definiteFunctionType(async.Future$(io._RawSecureSocket), [dart.dynamic, core.int], {is_server: core.bool, context: io.SecurityContext, socket: io.RawSocket, subscription: async.StreamSubscription, bufferedData: ListOfint(), requestClientCertificate: core.bool, requireClientCertificate: core.bool, onBadCertificate: X509CertificateTobool(), supportedProtocols: ListOfString()}), |
+ connect: dart.definiteFunctionType(async.Future$(io._RawSecureSocket), [dart.dynamic, core.int], {is_server: core.bool, context: io.SecurityContext, socket: io.RawSocket, subscription: StreamSubscriptionOfRawSocketEvent(), bufferedData: ListOfint(), requestClientCertificate: core.bool, requireClientCertificate: core.bool, onBadCertificate: X509CertificateTobool(), supportedProtocols: ListOfString()}), |
_verifyFields: dart.definiteFunctionType(dart.void, [dart.dynamic, core.int, core.bool, core.bool, core.bool, core.Function]) |
}), |
names: ['_isBufferEncrypted', 'connect', '_verifyFields'] |
@@ -47507,7 +48300,7 @@ io._ExternalBuffer = class _ExternalBuffer extends core.Object { |
while (true) { |
let toWrite = this.linearLength; |
if (toWrite == 0) return false; |
- let bytes = socket.write(ListOfint()._check(this.data), this.start, toWrite); |
+ let bytes = socket.write(this.data, this.start, toWrite); |
this.advanceStart(bytes); |
if (dart.notNull(bytes) < dart.notNull(toWrite)) { |
return true; |
@@ -47517,7 +48310,7 @@ io._ExternalBuffer = class _ExternalBuffer extends core.Object { |
}; |
dart.setSignature(io._ExternalBuffer, { |
fields: () => ({ |
- data: core.List, |
+ data: ListOfint(), |
start: core.int, |
end: core.int, |
size: dart.dynamic |
@@ -47981,7 +48774,7 @@ io.Stdin = class Stdin extends io._StdStream { |
let retainNewlines = opts && 'retainNewlines' in opts ? opts.retainNewlines : false; |
let CR = 13; |
let LF = 10; |
- let line = []; |
+ let line = JSArrayOfint().of([]); |
let crIsNewline = dart.test(io.Platform.isWindows) && dart.equals(io.stdioType(io.stdin), io.StdioType.TERMINAL) && !dart.test(/* Unimplemented unknown name */lineMode); |
if (dart.test(retainNewlines)) { |
let byte = null; |
@@ -48024,7 +48817,7 @@ io.Stdin = class Stdin extends io._StdStream { |
line[dartx.add](byte); |
} |
} |
- return encoding.decode(ListOfint()._check(line)); |
+ return encoding.decode(line); |
} |
set echoMode(enabled) { |
dart.throw(new core.UnsupportedError("Stdin.echoMode")); |
@@ -48061,9 +48854,11 @@ const _nonBlocking = Symbol('_nonBlocking'); |
const _hasTerminal = Symbol('_hasTerminal'); |
const _terminalColumns = Symbol('_terminalColumns'); |
const _terminalLines = Symbol('_terminalLines'); |
-io._StdSink = class _StdSink extends core.Object { |
- new(sink) { |
+const _isTranslatable = Symbol('_isTranslatable'); |
+io._StdSinkHelper = class _StdSinkHelper extends core.Object { |
+ new(sink, isTranslatable) { |
this[_sink$0] = sink; |
+ this[_isTranslatable] = isTranslatable; |
} |
get encoding() { |
return this[_sink$0].encoding; |
@@ -48071,18 +48866,29 @@ io._StdSink = class _StdSink extends core.Object { |
set encoding(encoding) { |
this[_sink$0].encoding = encoding; |
} |
+ set [_translation](t) { |
+ if (dart.test(this[_isTranslatable])) { |
+ let sink = io._IOSinkImpl._check(this[_sink$0]); |
+ let target = io._StdConsumer._check(sink[_target$]); |
+ dart.dput(target[_file], 'translation', t); |
+ } |
+ } |
write(object) { |
+ this[_translation] = io._FileTranslation.text; |
this[_sink$0].write(object); |
} |
writeln(object) { |
if (object === void 0) object = ""; |
+ this[_translation] = io._FileTranslation.text; |
this[_sink$0].writeln(object); |
} |
writeAll(objects, sep) { |
if (sep === void 0) sep = ""; |
+ this[_translation] = io._FileTranslation.text; |
this[_sink$0].writeAll(objects, sep); |
} |
add(data) { |
+ this[_translation] = io._FileTranslation.binary; |
this[_sink$0].add(data); |
} |
addError(error, stackTrace) { |
@@ -48090,9 +48896,11 @@ io._StdSink = class _StdSink extends core.Object { |
this[_sink$0].addError(error, stackTrace); |
} |
writeCharCode(charCode) { |
+ this[_translation] = io._FileTranslation.text; |
this[_sink$0].writeCharCode(charCode); |
} |
addStream(stream) { |
+ this[_translation] = io._FileTranslation.binary; |
return this[_sink$0].addStream(stream); |
} |
flush() { |
@@ -48105,14 +48913,20 @@ io._StdSink = class _StdSink extends core.Object { |
return this[_sink$0].done; |
} |
}; |
-io._StdSink[dart.implements] = () => [io.IOSink]; |
-dart.setSignature(io._StdSink, { |
- fields: () => ({[_sink$0]: io.IOSink}), |
+io._StdSinkHelper[dart.implements] = () => [io.IOSink]; |
+dart.setSignature(io._StdSinkHelper, { |
+ fields: () => ({ |
+ [_sink$0]: io.IOSink, |
+ [_isTranslatable]: core.bool |
+ }), |
getters: () => ({ |
encoding: dart.definiteFunctionType(convert.Encoding, []), |
done: dart.definiteFunctionType(async.Future, []) |
}), |
- setters: () => ({encoding: dart.definiteFunctionType(dart.void, [convert.Encoding])}), |
+ setters: () => ({ |
+ encoding: dart.definiteFunctionType(dart.void, [convert.Encoding]), |
+ [_translation]: dart.definiteFunctionType(dart.void, [io._FileTranslation]) |
+ }), |
methods: () => ({ |
write: dart.definiteFunctionType(dart.void, [core.Object]), |
writeln: dart.definiteFunctionType(dart.void, [], [core.Object]), |
@@ -48125,7 +48939,12 @@ dart.setSignature(io._StdSink, { |
close: dart.definiteFunctionType(async.Future, []) |
}) |
}); |
-io.Stdout = class Stdout extends io._StdSink { |
+io._StdFileSink = class _StdFileSink extends io._StdSinkHelper { |
+ new(sink) { |
+ super.new(sink, true); |
+ } |
+}; |
+io.Stdout = class Stdout extends io._StdFileSink { |
_(sink, fd) { |
this[_fd] = fd; |
this[_nonBlocking] = null; |
@@ -48192,6 +49011,23 @@ dart.setSignature(io.StdoutException, { |
osError: io.OSError |
}) |
}); |
+io.StdinException = class StdinException extends core.Object { |
+ new(message, osError) { |
+ if (osError === void 0) osError = null; |
+ this.message = message; |
+ this.osError = osError; |
+ } |
+ toString() { |
+ return dart.str`StdinException: ${this.message}${this.osError == null ? "" : dart.str`, ${this.osError}`}`; |
+ } |
+}; |
+io.StdinException[dart.implements] = () => [io.IOException]; |
+dart.setSignature(io.StdinException, { |
+ fields: () => ({ |
+ message: core.String, |
+ osError: io.OSError |
+ }) |
+}); |
io._StdConsumer = class _StdConsumer extends core.Object { |
new(fd) { |
this[_file] = io._File._openStdioSync(fd); |
@@ -48224,6 +49060,11 @@ dart.setSignature(io._StdConsumer, { |
close: dart.definiteFunctionType(async.Future, []) |
}) |
}); |
+io._StdSocketSink = class _StdSocketSink extends io._StdSinkHelper { |
+ new(sink) { |
+ super.new(sink, false); |
+ } |
+}; |
io.StdioType = class StdioType extends core.Object { |
_(name) { |
this.name = name; |
@@ -48352,10 +49193,10 @@ dart.setSignature(io._StdIOUtils, { |
}), |
names: ['_getStdioOutputStream', '_getStdioInputStream', '_socketType', '_getStdioHandleType'] |
}); |
-let const$76; |
-let const$77; |
-let const$78; |
let const$79; |
+let const$80; |
+let const$81; |
+let const$82; |
io.SystemEncoding = class SystemEncoding extends convert.Encoding { |
new() { |
super.new(); |
@@ -48371,16 +49212,16 @@ io.SystemEncoding = class SystemEncoding extends convert.Encoding { |
} |
get encoder() { |
if (io.Platform.operatingSystem == "windows") { |
- return const$76 || (const$76 = dart.const(new io._WindowsCodePageEncoder())); |
+ return const$79 || (const$79 = dart.const(new io._WindowsCodePageEncoder())); |
} else { |
- return const$77 || (const$77 = dart.const(new convert.Utf8Encoder())); |
+ return const$80 || (const$80 = dart.const(new convert.Utf8Encoder())); |
} |
} |
get decoder() { |
if (io.Platform.operatingSystem == "windows") { |
- return const$78 || (const$78 = dart.const(new io._WindowsCodePageDecoder())); |
+ return const$81 || (const$81 = dart.const(new io._WindowsCodePageDecoder())); |
} else { |
- return const$79 || (const$79 = dart.const(new convert.Utf8Decoder())); |
+ return const$82 || (const$82 = dart.const(new convert.Utf8Decoder())); |
} |
} |
}; |
@@ -48411,6 +49252,7 @@ io._WindowsCodePageEncoder = class _WindowsCodePageEncoder extends convert.Conve |
} |
}; |
dart.addSimpleTypeTests(io._WindowsCodePageEncoder); |
+io._WindowsCodePageEncoder[dart.implements] = () => [ChunkedConverterOfString$ListOfint$String$ListOfint()]; |
dart.setSignature(io._WindowsCodePageEncoder, { |
methods: () => ({ |
convert: dart.definiteFunctionType(core.List$(core.int), [core.String]), |
@@ -48463,6 +49305,7 @@ io._WindowsCodePageDecoder = class _WindowsCodePageDecoder extends convert.Conve |
} |
}; |
dart.addSimpleTypeTests(io._WindowsCodePageDecoder); |
+io._WindowsCodePageDecoder[dart.implements] = () => [ChunkedConverterOfListOfint$String$ListOfint$String()]; |
dart.setSignature(io._WindowsCodePageDecoder, { |
methods: () => ({ |
convert: dart.definiteFunctionType(core.String, [ListOfint()]), |
@@ -48691,6 +49534,14 @@ io._WebSocketOpcode.RESERVED_C = 12; |
io._WebSocketOpcode.RESERVED_D = 13; |
io._WebSocketOpcode.RESERVED_E = 14; |
io._WebSocketOpcode.RESERVED_F = 15; |
+io._EncodedString = class _EncodedString extends core.Object { |
+ new(bytes) { |
+ this.bytes = bytes; |
+ } |
+}; |
+dart.setSignature(io._EncodedString, { |
+ fields: () => ({bytes: ListOfint()}) |
+}); |
io._CompressionMaxWindowBits = class _CompressionMaxWindowBits extends core.Object { |
new(headerValue, maxWindowBits) { |
if (headerValue === void 0) headerValue = null; |
@@ -49030,7 +49881,7 @@ io._WebSocketProtocolTransformer = class _WebSocketProtocolTransformer extends c |
this[_unmaskingIndex] = 0; |
} |
}; |
-io._WebSocketProtocolTransformer[dart.implements] = () => [StreamTransformerOfListOfint$dynamic(), EventSinkOfUint8List()]; |
+io._WebSocketProtocolTransformer[dart.implements] = () => [EventSinkOfListOfint(), StreamTransformerOfListOfint$dynamic()]; |
dart.setSignature(io._WebSocketProtocolTransformer, { |
fields: () => ({ |
[_state$1]: core.int, |
@@ -49053,7 +49904,7 @@ dart.setSignature(io._WebSocketProtocolTransformer, { |
[_deflate]: io._WebSocketPerMessageDeflate |
}), |
methods: () => ({ |
- bind: dart.definiteFunctionType(async.Stream, [async.Stream]), |
+ bind: dart.definiteFunctionType(async.Stream, [StreamOfListOfint()]), |
addError: dart.definiteFunctionType(dart.void, [core.Object], [core.StackTrace]), |
close: dart.definiteFunctionType(dart.void, []), |
add: dart.definiteFunctionType(dart.void, [ListOfint()]), |
@@ -49097,6 +49948,7 @@ io._WebSocketPong = class _WebSocketPong extends core.Object { |
dart.setSignature(io._WebSocketPong, { |
fields: () => ({payload: ListOfint()}) |
}); |
+io._ProtocolSelector = dart.typedef('_ProtocolSelector', () => dart.functionType(dart.dynamic, [ListOfString()])); |
const _protocolSelector = Symbol('_protocolSelector'); |
const _compression = Symbol('_compression'); |
io._WebSocketTransformerImpl = class _WebSocketTransformerImpl extends core.Object { |
@@ -49134,24 +49986,24 @@ io._WebSocketTransformerImpl = class _WebSocketTransformerImpl extends core.Obje |
} |
let deflate = io._WebSocketTransformerImpl._negotiateCompression(request, response, compression); |
response.headers.contentLength = 0; |
- return response.detachSocket().then(io._WebSocketImpl)(dart.fn(socket => new io._WebSocketImpl._fromSocket(socket, protocol, compression, true, deflate), SocketTo_WebSocketImpl())); |
+ return response.detachSocket().then(io.WebSocket)(dart.fn(socket => new io._WebSocketImpl._fromSocket(socket, protocol, compression, true, deflate), SocketTo_WebSocketImpl())); |
} |
- dart.fn(upgrade, StringToFuture()); |
+ dart.fn(upgrade, StringToFutureOfWebSocket()); |
let protocols = request.headers._get('Sec-WebSocket-Protocol'); |
if (protocols != null && _protocolSelector != null) { |
protocols = io._HttpParser._tokenizeFieldValue(protocols[dartx.join](', ')); |
- return async.Future.new(dart.fn(() => dart.dcall(_protocolSelector, protocols), VoidTodynamic$())).then(dart.dynamic)(dart.fn(protocol => { |
- if (dart.notNull(protocols[dartx.indexOf](core.String._check(protocol))) < 0) { |
+ return FutureOfString().new(dart.fn(() => _protocolSelector(protocols), VoidTodynamic$())).then(core.String)(dart.fn(protocol => { |
+ if (dart.notNull(protocols[dartx.indexOf](protocol)) < 0) { |
dart.throw(new io.WebSocketException("Selected protocol is not in the list of available protocols")); |
} |
return protocol; |
- }, dynamicTodynamic$())).catchError(dart.fn(error => { |
+ }, StringToString$())).catchError(dart.fn(error => { |
response.statusCode = io.HttpStatus.INTERNAL_SERVER_ERROR; |
response.close(); |
dart.throw(error); |
}, dynamicToNull$())).then(io.WebSocket)(upgrade); |
} else { |
- return FutureOfWebSocket()._check(upgrade(null)); |
+ return upgrade(null); |
} |
} |
static _negotiateCompression(request, response, compression) { |
@@ -49200,12 +50052,12 @@ io._WebSocketTransformerImpl[dart.implements] = () => [io.WebSocketTransformer]; |
dart.setSignature(io._WebSocketTransformerImpl, { |
fields: () => ({ |
[_controller$0]: StreamControllerOfWebSocket(), |
- [_protocolSelector]: core.Function, |
+ [_protocolSelector]: io._ProtocolSelector, |
[_compression]: io.CompressionOptions |
}), |
methods: () => ({bind: dart.definiteFunctionType(async.Stream$(io.WebSocket), [StreamOfHttpRequest()])}), |
statics: () => ({ |
- _upgrade: dart.definiteFunctionType(async.Future$(io.WebSocket), [io.HttpRequest, dart.dynamic, io.CompressionOptions]), |
+ _upgrade: dart.definiteFunctionType(async.Future$(io.WebSocket), [io.HttpRequest, io._ProtocolSelector, io.CompressionOptions]), |
_negotiateCompression: dart.definiteFunctionType(io._WebSocketPerMessageDeflate, [io.HttpRequest, io.HttpResponse, io.CompressionOptions]), |
_isUpgradeRequest: dart.definiteFunctionType(core.bool, [io.HttpRequest]) |
}), |
@@ -49213,7 +50065,7 @@ dart.setSignature(io._WebSocketTransformerImpl, { |
}); |
const _ensureDecoder = Symbol('_ensureDecoder'); |
const _ensureEncoder = Symbol('_ensureEncoder'); |
-let const$80; |
+let const$83; |
io._WebSocketPerMessageDeflate = class _WebSocketPerMessageDeflate extends core.Object { |
new(opts) { |
let clientMaxWindowBits = opts && 'clientMaxWindowBits' in opts ? opts.clientMaxWindowBits : io._WebSocketImpl.DEFAULT_WINDOW_BITS; |
@@ -49241,25 +50093,24 @@ io._WebSocketPerMessageDeflate = class _WebSocketPerMessageDeflate extends core. |
} |
processIncomingMessage(msg) { |
this[_ensureDecoder](); |
- let data = []; |
+ let data = JSArrayOfint().of([]); |
data[dartx.addAll](msg); |
- data[dartx.addAll](const$80 || (const$80 = dart.constList([0, 0, 255, 255], core.int))); |
- this.decoder.process(ListOfint()._check(data), 0, data[dartx.length]); |
- let result = []; |
+ data[dartx.addAll](const$83 || (const$83 = dart.constList([0, 0, 255, 255], core.int))); |
+ this.decoder.process(data, 0, data[dartx.length]); |
+ let result = JSArrayOfint().of([]); |
let out = null; |
while ((out = this.decoder.processed()) != null) { |
- result[dartx.addAll](core.Iterable._check(out)); |
+ result[dartx.addAll](out); |
} |
if (dart.test(this.serverSide) && dart.test(this.clientNoContextTakeover) || !dart.test(this.serverSide) && dart.test(this.serverNoContextTakeover)) { |
this.decoder = null; |
} |
- return typed_data.Uint8List.fromList(ListOfint()._check(result)); |
+ return typed_data.Uint8List.fromList(result); |
} |
processOutgoingMessage(msg) { |
this[_ensureEncoder](); |
- let result = []; |
+ let result = JSArrayOfint().of([]); |
let buffer = null; |
- let out = null; |
if (!typed_data.Uint8List.is(msg)) { |
for (let i = 0; i < dart.notNull(msg[dartx.length]); i++) { |
if (dart.notNull(msg[dartx._get](i)) < 0 || 255 < dart.notNull(msg[dartx._get](i))) { |
@@ -49271,8 +50122,9 @@ io._WebSocketPerMessageDeflate = class _WebSocketPerMessageDeflate extends core. |
buffer = typed_data.Uint8List._check(msg); |
} |
this.encoder.process(buffer, 0, buffer[dartx.length]); |
+ let out = null; |
while ((out = this.encoder.processed()) != null) { |
- result[dartx.addAll](core.Iterable._check(out)); |
+ result[dartx.addAll](out); |
} |
if (!dart.test(this.serverSide) && dart.test(this.clientNoContextTakeover) || dart.test(this.serverSide) && dart.test(this.serverNoContextTakeover)) { |
this.encoder = null; |
@@ -49280,7 +50132,7 @@ io._WebSocketPerMessageDeflate = class _WebSocketPerMessageDeflate extends core. |
if (dart.notNull(result[dartx.length]) > 4) { |
result = result[dartx.sublist](0, dart.notNull(result[dartx.length]) - 4); |
} |
- return ListOfint()._check(result); |
+ return result; |
} |
}; |
dart.setSignature(io._WebSocketPerMessageDeflate, { |
@@ -49334,13 +50186,14 @@ io._WebSocketOutgoingTransformer = class _WebSocketOutgoingTransformer extends c |
if (typeof message == 'string') { |
opcode = io._WebSocketOpcode.TEXT; |
data = convert.UTF8.encode(message); |
+ } else if (ListOfint().is(message)) { |
+ opcode = io._WebSocketOpcode.BINARY; |
+ data = message; |
+ } else if (io._EncodedString.is(message)) { |
+ opcode = io._WebSocketOpcode.TEXT; |
+ data = message.bytes; |
} else { |
- if (ListOfint().is(message)) { |
- data = message; |
- opcode = io._WebSocketOpcode.BINARY; |
- } else { |
- dart.throw(new core.ArgumentError(message)); |
- } |
+ dart.throw(new core.ArgumentError(message)); |
} |
if (this[_deflateHelper] != null) { |
data = this[_deflateHelper].processOutgoingMessage(data); |
@@ -49370,7 +50223,7 @@ io._WebSocketOutgoingTransformer = class _WebSocketOutgoingTransformer extends c |
this[_eventSink$].close(); |
} |
addFrame(opcode, data) { |
- return io._WebSocketOutgoingTransformer.createFrame(opcode, data, this.webSocket[_serverSide], this[_deflateHelper] != null && (opcode == io._WebSocketOpcode.TEXT || opcode == io._WebSocketOpcode.BINARY))[dartx.forEach](dart.fn(e => { |
+ io._WebSocketOutgoingTransformer.createFrame(opcode, data, this.webSocket[_serverSide], this[_deflateHelper] != null && (opcode == io._WebSocketOpcode.TEXT || opcode == io._WebSocketOpcode.BINARY))[dartx.forEach](dart.fn(e => { |
this[_eventSink$].add(e); |
}, ListOfintToNull())); |
} |
@@ -49562,7 +50415,7 @@ io._WebSocketConsumer = class _WebSocketConsumer extends core.Object { |
this[_ensureController](); |
const closeSocket = (function() { |
return this.socket.close().catchError(dart.fn(_ => { |
- }, dynamicToNull$())).then(io._WebSocketImpl)(dart.fn(_ => this.webSocket, dynamicTo_WebSocketImpl())); |
+ }, dynamicToNull$())).then(io._WebSocketImpl)(dart.fn(_ => this.webSocket, SocketTo_WebSocketImpl())); |
}).bind(this); |
dart.fn(closeSocket, VoidToFuture()); |
this[_controller$0].close(); |
@@ -49612,7 +50465,7 @@ const _pingInterval = Symbol('_pingInterval'); |
const _pingTimer = Symbol('_pingTimer'); |
const _consumer = Symbol('_consumer'); |
const _closeTimer = Symbol('_closeTimer'); |
-let const$81; |
+let const$84; |
io._WebSocketImpl = class _WebSocketImpl extends dart.mixin(async.Stream, io._ServiceObject) { |
static connect(url, protocols, headers, opts) { |
let compression = opts && 'compression' in opts ? opts.compression : io.CompressionOptions.DEFAULT; |
@@ -49809,6 +50662,12 @@ io._WebSocketImpl = class _WebSocketImpl extends dart.mixin(async.Stream, io._Se |
add(data) { |
this[_sink$0].add(data); |
} |
+ addUtf8Text(bytes) { |
+ if (!ListOfint().is(bytes)) { |
+ dart.throw(new core.ArgumentError.value(bytes, "bytes", "Is not a list of bytes")); |
+ } |
+ this[_sink$0].add(new io._EncodedString(bytes)); |
+ } |
addError(error, stackTrace) { |
if (stackTrace === void 0) stackTrace = null; |
this[_sink$0].addError(error, stackTrace); |
@@ -49834,7 +50693,7 @@ io._WebSocketImpl = class _WebSocketImpl extends dart.mixin(async.Stream, io._Se |
this[_controller$0].stream.drain(dart.dynamic)().catchError(dart.fn(_ => dart.map(), dynamicToMap())); |
} |
if (this[_closeTimer] == null) { |
- this[_closeTimer] = async.Timer.new(const$81 || (const$81 = dart.const(new core.Duration({seconds: 5}))), dart.fn(() => { |
+ this[_closeTimer] = async.Timer.new(const$84 || (const$84 = dart.const(new core.Duration({seconds: 5}))), dart.fn(() => { |
this[_closeCode] = this[_outCloseCode]; |
this[_closeReason] = this[_outCloseReason]; |
if (this[_subscription$] != null) this[_subscription$].cancel(); |
@@ -49918,6 +50777,7 @@ dart.setSignature(io._WebSocketImpl, { |
methods: () => ({ |
listen: dart.definiteFunctionType(async.StreamSubscription, [dynamicTovoid()], {onError: core.Function, onDone: VoidTovoid(), cancelOnError: core.bool}), |
add: dart.definiteFunctionType(dart.void, [dart.dynamic]), |
+ addUtf8Text: dart.definiteFunctionType(dart.void, [ListOfint()]), |
addError: dart.definiteFunctionType(dart.void, [dart.dynamic], [core.StackTrace]), |
addStream: dart.definiteFunctionType(async.Future, [async.Stream]), |
close: dart.definiteFunctionType(async.Future, [], [core.int, core.String]), |
@@ -49942,7 +50802,7 @@ dart.defineLazy(io._WebSocketImpl, { |
return io.HttpClient.new(); |
} |
}); |
-isolate.IsolateSpawnException = class IsolateSpawnException extends core.Object { |
+isolate$.IsolateSpawnException = class IsolateSpawnException extends core.Object { |
new(message) { |
this.message = message; |
} |
@@ -49950,12 +50810,12 @@ isolate.IsolateSpawnException = class IsolateSpawnException extends core.Object |
return dart.str`IsolateSpawnException: ${this.message}`; |
} |
}; |
-isolate.IsolateSpawnException[dart.implements] = () => [core.Exception]; |
-dart.setSignature(isolate.IsolateSpawnException, { |
+isolate$.IsolateSpawnException[dart.implements] = () => [core.Exception]; |
+dart.setSignature(isolate$.IsolateSpawnException, { |
fields: () => ({message: core.String}) |
}); |
const _pause = Symbol('_pause'); |
-isolate.Isolate = class Isolate extends core.Object { |
+isolate$.Isolate = class Isolate extends core.Object { |
new(controlPort, opts) { |
let pauseCapability = opts && 'pauseCapability' in opts ? opts.pauseCapability : null; |
let terminateCapability = opts && 'terminateCapability' in opts ? opts.terminateCapability : null; |
@@ -49964,12 +50824,48 @@ isolate.Isolate = class Isolate extends core.Object { |
this.terminateCapability = terminateCapability; |
} |
static get current() { |
- return isolate.Isolate._currentIsolateCache; |
+ return isolate$.Isolate._currentIsolateCache; |
+ } |
+ static get packageRoot() { |
+ dart.throw(new core.UnsupportedError("Isolate.packageRoot")); |
+ } |
+ static get packageConfig() { |
+ dart.throw(new core.UnsupportedError("Isolate.packageConfig")); |
+ } |
+ static resolvePackageUri(packageUri) { |
+ return dart.async(function*(packageUri) { |
+ if (packageUri.scheme != 'package') return packageUri; |
+ return isolate$.Isolate._packageBase.resolveUri(packageUri.replace({scheme: ''})); |
+ }, core.Uri, packageUri); |
} |
static spawn(entryPoint, message, opts) { |
let paused = opts && 'paused' in opts ? opts.paused : false; |
+ let errorsAreFatal = opts && 'errorsAreFatal' in opts ? opts.errorsAreFatal : null; |
+ let onExit = opts && 'onExit' in opts ? opts.onExit : null; |
+ let onError = opts && 'onError' in opts ? opts.onError : null; |
+ let forcePause = errorsAreFatal != null || onExit != null || onError != null; |
try { |
- return _isolate_helper.IsolateNatives.spawnFunction(entryPoint, message, paused).then(isolate.Isolate)(dart.fn(msg => new isolate.Isolate(isolate.SendPort._check(msg[dartx._get](1)), {pauseCapability: isolate.Capability._check(msg[dartx._get](2)), terminateCapability: isolate.Capability._check(msg[dartx._get](3))}), ListToIsolate())); |
+ if (!isolate$._UnaryFunction.is(entryPoint)) { |
+ dart.throw(new core.ArgumentError(entryPoint)); |
+ } |
+ return _isolate_helper.IsolateNatives.spawnFunction(entryPoint, message, dart.test(paused) || forcePause).then(isolate$.Isolate)(dart.fn(msg => { |
+ let isolate = new isolate$.Isolate(isolate$.SendPort._check(msg[dartx._get](1)), {pauseCapability: isolate$.Capability._check(msg[dartx._get](2)), terminateCapability: isolate$.Capability._check(msg[dartx._get](3))}); |
+ if (forcePause) { |
+ if (errorsAreFatal != null) { |
+ isolate.setErrorsFatal(errorsAreFatal); |
+ } |
+ if (onExit != null) { |
+ isolate.addOnExitListener(onExit); |
+ } |
+ if (onError != null) { |
+ isolate.addErrorListener(onError); |
+ } |
+ if (!dart.test(paused)) { |
+ isolate.resume(isolate.pauseCapability); |
+ } |
+ } |
+ return isolate; |
+ }, ListToIsolate())); |
} catch (e) { |
let st = dart.stackTrace(e); |
return FutureOfIsolate().error(e, st); |
@@ -49978,10 +50874,20 @@ isolate.Isolate = class Isolate extends core.Object { |
} |
static spawnUri(uri, args, message, opts) { |
let paused = opts && 'paused' in opts ? opts.paused : false; |
+ let onExit = opts && 'onExit' in opts ? opts.onExit : null; |
+ let onError = opts && 'onError' in opts ? opts.onError : null; |
+ let errorsAreFatal = opts && 'errorsAreFatal' in opts ? opts.errorsAreFatal : null; |
+ let checked = opts && 'checked' in opts ? opts.checked : null; |
+ let environment = opts && 'environment' in opts ? opts.environment : null; |
let packageRoot = opts && 'packageRoot' in opts ? opts.packageRoot : null; |
+ let packageConfig = opts && 'packageConfig' in opts ? opts.packageConfig : null; |
+ let automaticPackageResolution = opts && 'automaticPackageResolution' in opts ? opts.automaticPackageResolution : false; |
+ if (environment != null) dart.throw(new core.UnimplementedError("environment")); |
if (packageRoot != null) dart.throw(new core.UnimplementedError("packageRoot")); |
+ if (packageConfig != null) dart.throw(new core.UnimplementedError("packageConfig")); |
+ let forcePause = errorsAreFatal != null || onExit != null || onError != null; |
try { |
- if (core.List.is(args)) { |
+ if (ListOfString().is(args)) { |
for (let i = 0; i < dart.notNull(args[dartx.length]); i++) { |
if (!(typeof args[dartx._get](i) == 'string')) { |
dart.throw(new core.ArgumentError(dart.str`Args must be a list of Strings ${args}`)); |
@@ -49990,7 +50896,24 @@ isolate.Isolate = class Isolate extends core.Object { |
} else if (args != null) { |
dart.throw(new core.ArgumentError(dart.str`Args must be a list of Strings ${args}`)); |
} |
- return _isolate_helper.IsolateNatives.spawnUri(uri, args, message, paused).then(isolate.Isolate)(dart.fn(msg => new isolate.Isolate(isolate.SendPort._check(msg[dartx._get](1)), {pauseCapability: isolate.Capability._check(msg[dartx._get](2)), terminateCapability: isolate.Capability._check(msg[dartx._get](3))}), ListToIsolate())); |
+ return _isolate_helper.IsolateNatives.spawnUri(uri, args, message, dart.test(paused) || forcePause).then(isolate$.Isolate)(dart.fn(msg => { |
+ let isolate = new isolate$.Isolate(isolate$.SendPort._check(msg[dartx._get](1)), {pauseCapability: isolate$.Capability._check(msg[dartx._get](2)), terminateCapability: isolate$.Capability._check(msg[dartx._get](3))}); |
+ if (forcePause) { |
+ if (errorsAreFatal != null) { |
+ isolate.setErrorsFatal(errorsAreFatal); |
+ } |
+ if (onExit != null) { |
+ isolate.addOnExitListener(onExit); |
+ } |
+ if (onError != null) { |
+ isolate.addErrorListener(onError); |
+ } |
+ if (!dart.test(paused)) { |
+ isolate.resume(isolate.pauseCapability); |
+ } |
+ } |
+ return isolate; |
+ }, ListToIsolate())); |
} catch (e) { |
let st = dart.stackTrace(e); |
return FutureOfIsolate().error(e, st); |
@@ -49999,7 +50922,8 @@ isolate.Isolate = class Isolate extends core.Object { |
} |
pause(resumeCapability) { |
if (resumeCapability === void 0) resumeCapability = null; |
- if (resumeCapability == null) resumeCapability = isolate.Capability.new(); |
+ let t = resumeCapability; |
+ t == null ? resumeCapability = isolate$.Capability.new() : t; |
this[_pause](resumeCapability); |
return resumeCapability; |
} |
@@ -50016,10 +50940,12 @@ isolate.Isolate = class Isolate extends core.Object { |
message[dartx._set](1, resumeCapability); |
this.controlPort.send(message); |
} |
- addOnExitListener(responsePort) { |
- let message = core.List.new(2); |
+ addOnExitListener(responsePort, opts) { |
+ let response = opts && 'response' in opts ? opts.response : null; |
+ let message = core.List.new(3); |
message[dartx._set](0, "add-ondone"); |
message[dartx._set](1, responsePort); |
+ message[dartx._set](2, response); |
this.controlPort.send(message); |
} |
removeOnExitListener(responsePort) { |
@@ -50035,16 +50961,18 @@ isolate.Isolate = class Isolate extends core.Object { |
message[dartx._set](2, errorsAreFatal); |
this.controlPort.send(message); |
} |
- kill(priority) { |
- if (priority === void 0) priority = isolate.Isolate.BEFORE_NEXT_EVENT; |
+ kill(opts) { |
+ let priority = opts && 'priority' in opts ? opts.priority : isolate$.Isolate.BEFORE_NEXT_EVENT; |
this.controlPort.send(JSArrayOfObject().of(["kill", this.terminateCapability, priority])); |
} |
- ping(responsePort, pingType) { |
- if (pingType === void 0) pingType = isolate.Isolate.IMMEDIATE; |
- let message = core.List.new(3); |
+ ping(responsePort, opts) { |
+ let response = opts && 'response' in opts ? opts.response : null; |
+ let priority = opts && 'priority' in opts ? opts.priority : isolate$.Isolate.IMMEDIATE; |
+ let message = core.List.new(4); |
message[dartx._set](0, "ping"); |
message[dartx._set](1, responsePort); |
- message[dartx._set](2, pingType); |
+ message[dartx._set](2, priority); |
+ message[dartx._set](3, response); |
this.controlPort.send(message); |
} |
addErrorListener(port) { |
@@ -50065,12 +50993,12 @@ isolate.Isolate = class Isolate extends core.Object { |
function handleError(message) { |
let errorDescription = core.String._check(dart.dindex(message, 0)); |
let stackDescription = core.String._check(dart.dindex(message, 1)); |
- let error = new isolate.RemoteError(errorDescription, stackDescription); |
+ let error = new isolate$.RemoteError(errorDescription, stackDescription); |
controller.addError(error, error.stackTrace); |
} |
dart.fn(handleError, dynamicTovoid$()); |
controller = async.StreamController.broadcast({sync: true, onListen: dart.fn(() => { |
- port = isolate.RawReceivePort.new(handleError); |
+ port = isolate$.RawReceivePort.new(handleError); |
this.addErrorListener(port.sendPort); |
}, VoidToNull()), onCancel: dart.fn(() => { |
this.removeErrorListener(port.sendPort); |
@@ -50080,42 +51008,46 @@ isolate.Isolate = class Isolate extends core.Object { |
return controller.stream; |
} |
}; |
-dart.setSignature(isolate.Isolate, { |
+dart.setSignature(isolate$.Isolate, { |
fields: () => ({ |
- controlPort: isolate.SendPort, |
- pauseCapability: isolate.Capability, |
- terminateCapability: isolate.Capability |
+ controlPort: isolate$.SendPort, |
+ pauseCapability: isolate$.Capability, |
+ terminateCapability: isolate$.Capability |
}), |
getters: () => ({errors: dart.definiteFunctionType(async.Stream, [])}), |
methods: () => ({ |
- pause: dart.definiteFunctionType(isolate.Capability, [], [isolate.Capability]), |
- [_pause]: dart.definiteFunctionType(dart.void, [isolate.Capability]), |
- resume: dart.definiteFunctionType(dart.void, [isolate.Capability]), |
- addOnExitListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
- removeOnExitListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
+ pause: dart.definiteFunctionType(isolate$.Capability, [], [isolate$.Capability]), |
+ [_pause]: dart.definiteFunctionType(dart.void, [isolate$.Capability]), |
+ resume: dart.definiteFunctionType(dart.void, [isolate$.Capability]), |
+ addOnExitListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort], {response: core.Object}), |
+ removeOnExitListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]), |
setErrorsFatal: dart.definiteFunctionType(dart.void, [core.bool]), |
- kill: dart.definiteFunctionType(dart.void, [], [core.int]), |
- ping: dart.definiteFunctionType(dart.void, [isolate.SendPort], [core.int]), |
- addErrorListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]), |
- removeErrorListener: dart.definiteFunctionType(dart.void, [isolate.SendPort]) |
+ kill: dart.definiteFunctionType(dart.void, [], {priority: core.int}), |
+ ping: dart.definiteFunctionType(dart.void, [isolate$.SendPort], {response: core.Object, priority: core.int}), |
+ addErrorListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]), |
+ removeErrorListener: dart.definiteFunctionType(dart.void, [isolate$.SendPort]) |
}), |
statics: () => ({ |
- spawn: dart.definiteFunctionType(async.Future$(isolate.Isolate), [dynamicTovoid(), dart.dynamic], {paused: core.bool}), |
- spawnUri: dart.definiteFunctionType(async.Future$(isolate.Isolate), [core.Uri, ListOfString(), dart.dynamic], {paused: core.bool, packageRoot: core.Uri}) |
+ resolvePackageUri: dart.definiteFunctionType(async.Future$(core.Uri), [core.Uri]), |
+ spawn: dart.definiteFunctionType(async.Future$(isolate$.Isolate), [dynamicTovoid(), dart.dynamic], {paused: core.bool, errorsAreFatal: core.bool, onExit: isolate$.SendPort, onError: isolate$.SendPort}), |
+ spawnUri: dart.definiteFunctionType(async.Future$(isolate$.Isolate), [core.Uri, ListOfString(), dart.dynamic], {paused: core.bool, onExit: isolate$.SendPort, onError: isolate$.SendPort, errorsAreFatal: core.bool, checked: core.bool, environment: MapOfString$String(), packageRoot: core.Uri, packageConfig: core.Uri, automaticPackageResolution: core.bool}) |
}), |
- names: ['spawn', 'spawnUri'] |
+ names: ['resolvePackageUri', 'spawn', 'spawnUri'] |
}); |
-isolate.Isolate.IMMEDIATE = 0; |
-isolate.Isolate.BEFORE_NEXT_EVENT = 1; |
-isolate.Isolate.AS_EVENT = 2; |
-dart.defineLazy(isolate.Isolate, { |
+isolate$.Isolate.IMMEDIATE = 0; |
+isolate$.Isolate.BEFORE_NEXT_EVENT = 1; |
+dart.defineLazy(isolate$.Isolate, { |
get _currentIsolateCache() { |
return _isolate_helper.IsolateNatives.currentIsolate; |
- } |
+ }, |
+ get _packageBase() { |
+ return core.Uri.base.resolve(core.String._check(dart.dload(_isolate_helper.IsolateNatives, 'packagesBase'))); |
+ }, |
+ set _packageBase(_) {} |
}); |
-isolate.SendPort = class SendPort extends core.Object {}; |
-isolate.SendPort[dart.implements] = () => [isolate.Capability]; |
-isolate.ReceivePort = class ReceivePort extends core.Object { |
+isolate$.SendPort = class SendPort extends core.Object {}; |
+isolate$.SendPort[dart.implements] = () => [isolate$.Capability]; |
+isolate$.ReceivePort = class ReceivePort extends core.Object { |
static new() { |
return new _isolate_helper.ReceivePortImpl(); |
} |
@@ -50123,62 +51055,32 @@ isolate.ReceivePort = class ReceivePort extends core.Object { |
return new _isolate_helper.ReceivePortImpl.fromRawReceivePort(rawPort); |
} |
}; |
-isolate.ReceivePort[dart.implements] = () => [async.Stream]; |
-isolate.RawReceivePort = class RawReceivePort extends core.Object { |
+isolate$.ReceivePort[dart.implements] = () => [async.Stream]; |
+isolate$.RawReceivePort = class RawReceivePort extends core.Object { |
static new(handler) { |
if (handler === void 0) handler = null; |
return new _isolate_helper.RawReceivePortImpl(handler); |
} |
}; |
-isolate._IsolateUnhandledException = class _IsolateUnhandledException extends core.Object { |
- new(message, source, stackTrace) { |
- this.message = message; |
- this.source = source; |
- this.stackTrace = stackTrace; |
- } |
- toString() { |
- return 'IsolateUnhandledException: exception while handling message: ' + dart.str`${this.message} \n ` + dart.str`${dart.toString(this.source)[dartx.replaceAll]("\n", "\n ")}\n` + 'original stack trace:\n ' + dart.str`${dart.toString(this.stackTrace)[dartx.replaceAll]("\n", "\n ")}`; |
- } |
-}; |
-isolate._IsolateUnhandledException[dart.implements] = () => [core.Exception]; |
-dart.setSignature(isolate._IsolateUnhandledException, { |
- fields: () => ({ |
- message: dart.dynamic, |
- source: dart.dynamic, |
- stackTrace: core.StackTrace |
- }) |
-}); |
const _description = Symbol('_description'); |
-isolate.RemoteError = class RemoteError extends core.Object { |
+isolate$.RemoteError = class RemoteError extends core.Object { |
new(description, stackDescription) { |
this[_description] = description; |
- this.stackTrace = new isolate._RemoteStackTrace(stackDescription); |
+ this.stackTrace = core.StackTrace.fromString(stackDescription); |
} |
toString() { |
return this[_description]; |
} |
}; |
-isolate.RemoteError[dart.implements] = () => [core.Error]; |
-dart.setSignature(isolate.RemoteError, { |
+isolate$.RemoteError[dart.implements] = () => [core.Error]; |
+dart.setSignature(isolate$.RemoteError, { |
fields: () => ({ |
[_description]: core.String, |
stackTrace: core.StackTrace |
}) |
}); |
-const _trace$ = Symbol('_trace'); |
-isolate._RemoteStackTrace = class _RemoteStackTrace extends core.Object { |
- new(trace) { |
- this[_trace$] = trace; |
- } |
- toString() { |
- return this[_trace$]; |
- } |
-}; |
-isolate._RemoteStackTrace[dart.implements] = () => [core.StackTrace]; |
-dart.setSignature(isolate._RemoteStackTrace, { |
- fields: () => ({[_trace$]: core.String}) |
-}); |
-isolate.Capability = class Capability extends core.Object { |
+isolate$._UnaryFunction = dart.typedef('_UnaryFunction', () => dart.functionType(dart.dynamic, [dart.dynamic])); |
+isolate$.Capability = class Capability extends core.Object { |
static new() { |
return new _isolate_helper.CapabilityImpl(); |
} |
@@ -50695,13 +51597,40 @@ math.SQRT1_2 = 0.7071067811865476; |
math.SQRT2 = 1.4142135623730951; |
math.min = function(T) { |
return (a, b) => { |
- return Math.min(_js_helper.checkNum(a), _js_helper.checkNum(b)); |
+ if (!(typeof a == 'number')) dart.throw(new core.ArgumentError(a)); |
+ if (!(typeof b == 'number')) dart.throw(new core.ArgumentError(b)); |
+ if (dart.notNull(a) > dart.notNull(b)) return b; |
+ if (dart.notNull(a) < dart.notNull(b)) return a; |
+ if (typeof b == 'number') { |
+ if (typeof a == 'number') { |
+ if (a == 0.0) { |
+ return (dart.notNull(a) + dart.notNull(b)) * dart.notNull(a) * dart.notNull(b); |
+ } |
+ } |
+ if (a == 0 && dart.test(b[dartx.isNegative]) || dart.test(b[dartx.isNaN])) return b; |
+ return a; |
+ } |
+ return a; |
}; |
}; |
dart.fn(math.min, TAndTToT()); |
math.max = function(T) { |
return (a, b) => { |
- return Math.max(_js_helper.checkNum(a), _js_helper.checkNum(b)); |
+ if (!(typeof a == 'number')) dart.throw(new core.ArgumentError(a)); |
+ if (!(typeof b == 'number')) dart.throw(new core.ArgumentError(b)); |
+ if (dart.notNull(a) > dart.notNull(b)) return a; |
+ if (dart.notNull(a) < dart.notNull(b)) return b; |
+ if (typeof b == 'number') { |
+ if (typeof a == 'number') { |
+ if (a == 0.0) { |
+ return dart.notNull(a) + dart.notNull(b); |
+ } |
+ } |
+ if (dart.test(b[dartx.isNaN])) return b; |
+ return a; |
+ } |
+ if (b == 0 && dart.test(a[dartx.isNegative])) return b; |
+ return a; |
}; |
}; |
dart.fn(math.max, TAndTToT$()); |
@@ -51054,11 +51983,11 @@ math.Point$ = dart.generic(T => { |
return Point; |
}); |
math.Point = Point$(); |
-let const$82; |
+let const$85; |
math.Random = class Random extends core.Object { |
static new(seed) { |
if (seed === void 0) seed = null; |
- return seed == null ? const$82 || (const$82 = dart.const(new math._JSRandom())) : new math._Random(seed); |
+ return seed == null ? const$85 || (const$85 = dart.const(new math._JSRandom())) : new math._Random(seed); |
} |
static secure() { |
return math.Random._secureRandom; |
@@ -51102,8 +52031,7 @@ math._RectangleBase$ = dart.generic(T => { |
} |
['=='](other) { |
if (!RectangleOfnum().is(other)) return false; |
- let otherRect = RectangleOfnum().as(other); |
- return this[dartx.left] == otherRect[dartx.left] && this[dartx.top] == otherRect[dartx.top] && this[dartx.right] == otherRect[dartx.right] && this[dartx.bottom] == otherRect[dartx.bottom]; |
+ return dart.equals(this[dartx.left], dart.dload(other, 'left')) && dart.equals(this[dartx.top], dart.dload(other, 'top')) && dart.equals(this[dartx.right], dart.dload(other, 'right')) && dart.equals(this[dartx.bottom], dart.dload(other, 'bottom')); |
} |
get hashCode() { |
return math._JenkinsSmiHash.hash4(dart.hashCode(this[dartx.left]), dart.hashCode(this[dartx.top]), dart.hashCode(this[dartx.right]), dart.hashCode(this[dartx.bottom])); |
@@ -52413,7 +53341,7 @@ dart.setSignature(indexed_db.KeyRange, { |
}); |
dart.registerExtension(dart.global.IDBKeyRange, indexed_db.KeyRange); |
const _add$3 = Symbol('_add'); |
-const _clear$0 = Symbol('_clear'); |
+const _clear$ = Symbol('_clear'); |
const _put = Symbol('_put'); |
const _createIndex = Symbol('_createIndex'); |
const _add_1 = Symbol('_add_1'); |
@@ -52461,7 +53389,7 @@ indexed_db.ObjectStore = class ObjectStore extends _interceptors.Interceptor { |
} |
[dartx.clear]() { |
try { |
- return indexed_db._completeRequest(dart.dynamic)(this[_clear$0]()); |
+ return indexed_db._completeRequest(dart.dynamic)(this[_clear$]()); |
} catch (e) { |
let stacktrace = dart.stackTrace(e); |
return async.Future.error(e, stacktrace); |
@@ -52582,7 +53510,7 @@ indexed_db.ObjectStore = class ObjectStore extends _interceptors.Interceptor { |
[_add_2](...args) { |
return this.add.apply(this, args); |
} |
- [_clear$0](...args) { |
+ [_clear$](...args) { |
return this.clear.apply(this, args); |
} |
[_count$0](...args) { |
@@ -52681,7 +53609,7 @@ dart.setSignature(indexed_db.ObjectStore, { |
[_add$3]: dart.definiteFunctionType(indexed_db.Request, [dart.dynamic], [dart.dynamic]), |
[_add_1]: dart.definiteFunctionType(indexed_db.Request, [dart.dynamic, dart.dynamic]), |
[_add_2]: dart.definiteFunctionType(indexed_db.Request, [dart.dynamic]), |
- [_clear$0]: dart.definiteFunctionType(indexed_db.Request, []), |
+ [_clear$]: dart.definiteFunctionType(indexed_db.Request, []), |
[_count$0]: dart.definiteFunctionType(indexed_db.Request, [core.Object]), |
[_createIndex]: dart.definiteFunctionType(indexed_db.Index, [core.String, core.Object], [core.Map]), |
[_createIndex_1]: dart.definiteFunctionType(indexed_db.Index, [dart.dynamic, dart.dynamic, dart.dynamic]), |
@@ -59470,7 +60398,7 @@ const _borderTopWidth = Symbol('_borderTopWidth'); |
const _borderWidth = Symbol('_borderWidth'); |
const _bottom = Symbol('_bottom'); |
const _captionSide = Symbol('_captionSide'); |
-const _clear$1 = Symbol('_clear'); |
+const _clear$0 = Symbol('_clear'); |
const _clip = Symbol('_clip'); |
const _color = Symbol('_color'); |
const _content = Symbol('_content'); |
@@ -64285,15 +65213,15 @@ html$.CssStyleDeclaration = class CssStyleDeclaration extends dart.mixin(_interc |
this.captionSide = value; |
} |
get [dartx.clear]() { |
- return this[_clear$1]; |
+ return this[_clear$0]; |
} |
set [dartx.clear](value) { |
- this[_clear$1] = value == null ? '' : value; |
+ this[_clear$0] = value == null ? '' : value; |
} |
- get [_clear$1]() { |
+ get [_clear$0]() { |
return this.clear; |
} |
- set [_clear$1](value) { |
+ set [_clear$0](value) { |
this.clear = value; |
} |
get [dartx.clip]() { |
@@ -65040,7 +65968,7 @@ dart.setSignature(html$.CssStyleDeclaration, { |
[_borderWidth]: core.String, |
[_bottom]: core.String, |
[_captionSide]: core.String, |
- [_clear$1]: core.String, |
+ [_clear$0]: core.String, |
[_clip]: core.String, |
[_color]: core.String, |
[_content]: core.String, |
@@ -84088,7 +85016,7 @@ html$.Storage = class Storage extends _interceptors.Interceptor { |
return value; |
} |
[dartx.clear]() { |
- return this[_clear$1](); |
+ return this[_clear$0](); |
} |
[dartx.forEach](f) { |
for (let i = 0; true; i++) { |
@@ -84131,7 +85059,7 @@ html$.Storage = class Storage extends _interceptors.Interceptor { |
[__setter__](...args) { |
return this.__setter__.apply(this, args); |
} |
- [_clear$1](...args) { |
+ [_clear$0](...args) { |
return this.clear.apply(this, args); |
} |
[_getItem](...args) { |
@@ -84170,7 +85098,7 @@ dart.setSignature(html$.Storage, { |
[__delete__]: dart.definiteFunctionType(core.bool, [dart.dynamic]), |
[__getter__]: dart.definiteFunctionType(core.String, [dart.dynamic]), |
[__setter__]: dart.definiteFunctionType(dart.void, [dart.dynamic, core.String]), |
- [_clear$1]: dart.definiteFunctionType(dart.void, []), |
+ [_clear$0]: dart.definiteFunctionType(dart.void, []), |
[_getItem]: dart.definiteFunctionType(core.String, [core.String]), |
[_key]: dart.definiteFunctionType(core.String, [core.int]), |
[_removeItem]: dart.definiteFunctionType(dart.void, [core.String]), |
@@ -93180,9 +94108,6 @@ dart.setSignature(html$.NodeValidatorBuilder, { |
allowsAttribute: dart.definiteFunctionType(core.bool, [html$.Element, core.String, core.String]) |
}) |
}); |
-let const$83; |
-let const$84; |
-let const$85; |
let const$86; |
let const$87; |
let const$88; |
@@ -93190,15 +94115,18 @@ let const$89; |
let const$90; |
let const$91; |
let const$92; |
+let const$93; |
+let const$94; |
+let const$95; |
html$._SimpleNodeValidator = class _SimpleNodeValidator extends core.Object { |
static allowNavigation(uriPolicy) { |
- return new html$._SimpleNodeValidator(uriPolicy, {allowedElements: const$83 || (const$83 = dart.constList(['A', 'FORM'], core.String)), allowedAttributes: const$84 || (const$84 = dart.constList(['A::accesskey', 'A::coords', 'A::hreflang', 'A::name', 'A::shape', 'A::tabindex', 'A::target', 'A::type', 'FORM::accept', 'FORM::autocomplete', 'FORM::enctype', 'FORM::method', 'FORM::name', 'FORM::novalidate', 'FORM::target'], core.String)), allowedUriAttributes: const$85 || (const$85 = dart.constList(['A::href', 'FORM::action'], core.String))}); |
+ return new html$._SimpleNodeValidator(uriPolicy, {allowedElements: const$86 || (const$86 = dart.constList(['A', 'FORM'], core.String)), allowedAttributes: const$87 || (const$87 = dart.constList(['A::accesskey', 'A::coords', 'A::hreflang', 'A::name', 'A::shape', 'A::tabindex', 'A::target', 'A::type', 'FORM::accept', 'FORM::autocomplete', 'FORM::enctype', 'FORM::method', 'FORM::name', 'FORM::novalidate', 'FORM::target'], core.String)), allowedUriAttributes: const$88 || (const$88 = dart.constList(['A::href', 'FORM::action'], core.String))}); |
} |
static allowImages(uriPolicy) { |
- return new html$._SimpleNodeValidator(uriPolicy, {allowedElements: const$86 || (const$86 = dart.constList(['IMG'], core.String)), allowedAttributes: const$87 || (const$87 = dart.constList(['IMG::align', 'IMG::alt', 'IMG::border', 'IMG::height', 'IMG::hspace', 'IMG::ismap', 'IMG::name', 'IMG::usemap', 'IMG::vspace', 'IMG::width'], core.String)), allowedUriAttributes: const$88 || (const$88 = dart.constList(['IMG::src'], core.String))}); |
+ return new html$._SimpleNodeValidator(uriPolicy, {allowedElements: const$89 || (const$89 = dart.constList(['IMG'], core.String)), allowedAttributes: const$90 || (const$90 = dart.constList(['IMG::align', 'IMG::alt', 'IMG::border', 'IMG::height', 'IMG::hspace', 'IMG::ismap', 'IMG::name', 'IMG::usemap', 'IMG::vspace', 'IMG::width'], core.String)), allowedUriAttributes: const$91 || (const$91 = dart.constList(['IMG::src'], core.String))}); |
} |
static allowTextElements() { |
- return new html$._SimpleNodeValidator(null, {allowedElements: const$89 || (const$89 = dart.constList(['B', 'BLOCKQUOTE', 'BR', 'EM', 'H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'HR', 'I', 'LI', 'OL', 'P', 'SPAN', 'UL'], core.String))}); |
+ return new html$._SimpleNodeValidator(null, {allowedElements: const$92 || (const$92 = dart.constList(['B', 'BLOCKQUOTE', 'BR', 'EM', 'H1', 'H2', 'H3', 'H4', 'H5', 'H6', 'HR', 'I', 'LI', 'OL', 'P', 'SPAN', 'UL'], core.String))}); |
} |
new(uriPolicy, opts) { |
let allowedElements = opts && 'allowedElements' in opts ? opts.allowedElements : null; |
@@ -93208,9 +94136,9 @@ html$._SimpleNodeValidator = class _SimpleNodeValidator extends core.Object { |
this.allowedAttributes = SetOfString().new(); |
this.allowedUriAttributes = SetOfString().new(); |
this.uriPolicy = uriPolicy; |
- this.allowedElements.addAll((allowedElements != null ? allowedElements : const$90 || (const$90 = dart.constList([], core.String)))); |
- allowedAttributes = allowedAttributes != null ? allowedAttributes : const$91 || (const$91 = dart.constList([], core.String)); |
- allowedUriAttributes = allowedUriAttributes != null ? allowedUriAttributes : const$92 || (const$92 = dart.constList([], core.String)); |
+ this.allowedElements.addAll((allowedElements != null ? allowedElements : const$93 || (const$93 = dart.constList([], core.String)))); |
+ allowedAttributes = allowedAttributes != null ? allowedAttributes : const$94 || (const$94 = dart.constList([], core.String)); |
+ allowedUriAttributes = allowedUriAttributes != null ? allowedUriAttributes : const$95 || (const$95 = dart.constList([], core.String)); |
let legalAttributes = allowedAttributes[dartx.where](dart.fn(x => !dart.test(html$._Html5NodeValidator._uriAttributes[dartx.contains](x)), StringTobool$())); |
let extraUriAttributes = allowedAttributes[dartx.where](dart.fn(x => html$._Html5NodeValidator._uriAttributes[dartx.contains](x), StringTobool$())); |
this.allowedAttributes.addAll(legalAttributes); |
@@ -93496,7 +94424,7 @@ dart.setSignature(html$._HttpRequestUtils, { |
names: ['get'] |
}); |
const _array = Symbol('_array'); |
-const _current$4 = Symbol('_current'); |
+const _current$2 = Symbol('_current'); |
html$.FixedSizeListIterator$ = dart.generic(T => { |
let IteratorOfT = () => (IteratorOfT = dart.constFn(core.Iterator$(T)))(); |
let ListOfT = () => (ListOfT = dart.constFn(core.List$(T)))(); |
@@ -93505,21 +94433,21 @@ html$.FixedSizeListIterator$ = dart.generic(T => { |
this[_array] = array; |
this[_position$1] = -1; |
this[_length$3] = array[dartx.length]; |
- this[_current$4] = null; |
+ this[_current$2] = null; |
} |
moveNext() { |
let nextPosition = dart.notNull(this[_position$1]) + 1; |
if (nextPosition < dart.notNull(this[_length$3])) { |
- this[_current$4] = this[_array][dartx._get](nextPosition); |
+ this[_current$2] = this[_array][dartx._get](nextPosition); |
this[_position$1] = nextPosition; |
return true; |
} |
- this[_current$4] = null; |
+ this[_current$2] = null; |
this[_position$1] = this[_length$3]; |
return false; |
} |
get current() { |
- return this[_current$4]; |
+ return this[_current$2]; |
} |
} |
dart.addTypeTests(FixedSizeListIterator); |
@@ -93529,7 +94457,7 @@ html$.FixedSizeListIterator$ = dart.generic(T => { |
[_array]: ListOfT(), |
[_length$3]: core.int, |
[_position$1]: core.int, |
- [_current$4]: T |
+ [_current$2]: T |
}), |
getters: () => ({current: dart.definiteFunctionType(T, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -93544,21 +94472,21 @@ html$._VariableSizeListIterator$ = dart.generic(T => { |
new(array) { |
this[_array] = array; |
this[_position$1] = -1; |
- this[_current$4] = null; |
+ this[_current$2] = null; |
} |
moveNext() { |
let nextPosition = dart.notNull(this[_position$1]) + 1; |
if (nextPosition < dart.notNull(this[_array][dartx.length])) { |
- this[_current$4] = this[_array][dartx._get](nextPosition); |
+ this[_current$2] = this[_array][dartx._get](nextPosition); |
this[_position$1] = nextPosition; |
return true; |
} |
- this[_current$4] = null; |
+ this[_current$2] = null; |
this[_position$1] = this[_array][dartx.length]; |
return false; |
} |
get current() { |
- return this[_current$4]; |
+ return this[_current$2]; |
} |
} |
dart.addTypeTests(_VariableSizeListIterator); |
@@ -93567,7 +94495,7 @@ html$._VariableSizeListIterator$ = dart.generic(T => { |
fields: () => ({ |
[_array]: ListOfT(), |
[_position$1]: core.int, |
- [_current$4]: T |
+ [_current$2]: T |
}), |
getters: () => ({current: dart.definiteFunctionType(T, [])}), |
methods: () => ({moveNext: dart.definiteFunctionType(core.bool, [])}) |
@@ -104495,7 +105423,7 @@ exports.convert = convert; |
exports.core = core; |
exports.developer = developer; |
exports.io = io; |
-exports.isolate = isolate; |
+exports.isolate = isolate$; |
exports.js = js; |
exports.js_util = js_util; |
exports.math = math; |