| main = #lib::main; |
| [@vm.bytecode= |
| ComponentBytecodeMetadata { |
| |
| Bytecode (version: stable) |
| Main library: #lib |
| |
| } |
| ] [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| Field '_stdinFD', type = dart:core::int, reflectable, static |
| value = const 0 |
| |
| Field '_stdoutFD', type = dart:core::int, reflectable, static |
| value = const 1 |
| |
| Field '_stderrFD', type = dart:core::int, reflectable, static |
| value = const 2 |
| |
| Field '_rawScript', type = dart:core::String, reflectable, static |
| value = null |
| |
| Field '_stdin', type = #lib::Stdin, reflectable, static |
| value = null |
| |
| Function '_printString', static, reflectable, debuggable, native 'Builtin_PrintString' |
| parameters [dart:core::String 's'] (required: 1) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| NativeCall CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = NativeEntry Builtin_PrintString |
| } |
| |
| |
| Function '_print', static, reflectable, debuggable |
| parameters [dynamic 'arg'] (required: 1) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| InterfaceCall 1, CP#0 |
| DirectCall 1, CP#2 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = InterfaceCall 'dart:core::Object::toString', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| [2] = DirectCall '#lib::_printString', ArgDesc num-args 1, num-type-args 0, names [] |
| [3] = Reserved |
| } |
| |
| |
| Function '_getPrintClosure', static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dynamic |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| PushConstant CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = ObjectRef const tear-off #lib::_print |
| } |
| |
| |
| Function '_setScheduleImmediateClosure', static, reflectable, debuggable |
| parameters [FunctionType (FunctionType () -> void) -> void 'closure'] (required: 1) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 1 |
| CheckStack 0 |
| Push FP[-5] |
| StoreStaticTOS CP#0 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::_ScheduleImmediate::_closure (field) |
| } |
| |
| |
| Function '_setStdioFDs', static, reflectable, debuggable |
| parameters [dart:core::int 'stdin', dart:core::int 'stdout', dart:core::int 'stderr'] (required: 3) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 1 |
| CheckStack 0 |
| Push FP[-7] |
| StoreStaticTOS CP#0 |
| Push FP[-6] |
| StoreStaticTOS CP#1 |
| Push FP[-5] |
| StoreStaticTOS CP#2 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::_stdinFD (field) |
| [1] = StaticField #lib::_stdoutFD (field) |
| [2] = StaticField #lib::_stderrFD (field) |
| } |
| |
| |
| Function '_scriptUri', static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dart:core::Uri |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| PushConstant CP#1 |
| InterfaceCall 2, CP#2 |
| AssertBoolean 0 |
| JumpIfTrue L1 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| PushConstant CP#4 |
| InterfaceCall 2, CP#2 |
| AssertBoolean 0 |
| PopLocal r1 |
| Jump L2 |
| L1: |
| PushTrue |
| PopLocal r1 |
| L2: |
| Push r1 |
| JumpIfTrue L3 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| PushConstant CP#5 |
| InterfaceCall 2, CP#2 |
| AssertBoolean 0 |
| PopLocal r0 |
| Jump L4 |
| L3: |
| PushTrue |
| PopLocal r0 |
| L4: |
| Push r0 |
| JumpIfFalse L5 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| DirectCall 1, CP#6 |
| ReturnTOS |
| L5: |
| DirectCall 0, CP#8 |
| PushNull |
| PushConstant CP#0 |
| PushStatic CP#0 |
| DirectCall 2, CP#10 |
| InterfaceCall 2, CP#12 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::_rawScript (field) |
| [1] = ObjectRef 'http:' |
| [2] = InterfaceCall 'dart:core::String::startsWith', ArgDesc num-args 2, num-type-args 0, names [] |
| [3] = Reserved |
| [4] = ObjectRef 'https:' |
| [5] = ObjectRef 'file:' |
| [6] = DirectCall 'dart:core::Uri::parse', ArgDesc num-args 1, num-type-args 0, names [] |
| [7] = Reserved |
| [8] = DirectCall 'dart:core::Uri::get:base', ArgDesc num-args 0, num-type-args 0, names [] |
| [9] = Reserved |
| [10] = DirectCall 'dart:core::_Uri::file (constructor)', ArgDesc num-args 2, num-type-args 0, names [] |
| [11] = Reserved |
| [12] = InterfaceCall 'dart:core::Uri::resolveUri', ArgDesc num-args 2, num-type-args 0, names [] |
| [13] = Reserved |
| } |
| |
| |
| Function '_setupHooks', static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dynamic |
| |
| |
| Bytecode { |
| Entry 1 |
| CheckStack 0 |
| PushConstant CP#0 |
| DirectCall 1, CP#1 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = ObjectRef const tear-off #lib::_scriptUri |
| [1] = DirectCall '#lib::VMLibraryHooks::set:platformScript', ArgDesc num-args 1, num-type-args 0, names [] |
| [2] = Reserved |
| } |
| |
| |
| Function 'get:stdin', getter, static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type #lib::Stdin |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| EqualsNull |
| JumpIfFalse L1 |
| PushConstant CP#1 |
| PushStatic CP#1 |
| DirectCall 1, CP#2 |
| StoreLocal r1 |
| Push r1 |
| StoreStaticTOS CP#0 |
| PopLocal r0 |
| Jump L2 |
| L1: |
| PushNull |
| PopLocal r0 |
| L2: |
| Push r0 |
| Drop1 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::_stdin (field) |
| [1] = StaticField #lib::_stdinFD (field) |
| [2] = DirectCall '#lib::_StdIOUtils::_getStdioInputStream', ArgDesc num-args 1, num-type-args 0, names [] |
| [3] = Reserved |
| } |
| |
| |
| Function 'main', static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dynamic |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| } |
| |
| } |
| |
| } |
| ]library #lib from "#lib" as #lib { |
| |
| typedef _ScheduleImmediateClosure = (() → void) → void; |
| [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| Field '_closure', type = FunctionType (FunctionType () -> void) -> void, reflectable, static |
| value = null |
| |
| Function '', constructor, reflectable |
| parameters [] (required: 0) |
| return-type #lib::_ScheduleImmediate |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| } |
| |
| } |
| ] class _ScheduleImmediate extends dart.core::Object { |
| static field (() → void) → void _closure = null; |
| synthetic constructor •() → #lib::_ScheduleImmediate |
| : super dart.core::Object::•() |
| ; |
| } |
| [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| Field '_cachedNamespace', type = #lib::_NamespaceImpl, reflectable, static |
| value = null |
| |
| Function '_', constructor, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type #lib::_NamespaceImpl |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function '_create', static, reflectable, debuggable, native 'Namespace_Create' |
| parameters [#lib::_NamespaceImpl 'namespace', dynamic 'n'] (required: 2) |
| return-type #lib::_NamespaceImpl |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-6] |
| Push FP[-5] |
| NativeCall CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = NativeEntry Namespace_Create |
| } |
| |
| |
| Function '_getPointer', static, reflectable, debuggable, native 'Namespace_GetPointer' |
| parameters [#lib::_NamespaceImpl 'namespace'] (required: 1) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| NativeCall CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = NativeEntry Namespace_GetPointer |
| } |
| |
| |
| Function '_getDefault', static, reflectable, debuggable, native 'Namespace_GetDefault' |
| parameters [] (required: 0) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| NativeCall CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = NativeEntry Namespace_GetDefault |
| } |
| |
| |
| Function '_setupNamespace', static, reflectable, debuggable |
| parameters [dynamic 'namespace'] (required: 1) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| Allocate CP#0 |
| StoreLocal r1 |
| Push r1 |
| DirectCall 1, CP#1 |
| Drop1 |
| Push FP[-5] |
| DirectCall 2, CP#3 |
| StoreStaticTOS CP#5 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = Class #lib::_NamespaceImpl |
| [1] = DirectCall '#lib::_NamespaceImpl::_ (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [2] = Reserved |
| [3] = DirectCall '#lib::_NamespaceImpl::_create', ArgDesc num-args 2, num-type-args 0, names [] |
| [4] = Reserved |
| [5] = StaticField #lib::_NamespaceImpl::_cachedNamespace (field) |
| } |
| |
| |
| Function 'get:_namespace', getter, static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type #lib::_NamespaceImpl |
| |
| |
| Bytecode { |
| Entry 2 |
| CheckStack 0 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| EqualsNull |
| JumpIfFalse L1 |
| Allocate CP#1 |
| StoreLocal r1 |
| Push r1 |
| DirectCall 1, CP#2 |
| Drop1 |
| DirectCall 0, CP#4 |
| DirectCall 2, CP#6 |
| StoreStaticTOS CP#0 |
| L1: |
| PushConstant CP#0 |
| PushStatic CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::_NamespaceImpl::_cachedNamespace (field) |
| [1] = Class #lib::_NamespaceImpl |
| [2] = DirectCall '#lib::_NamespaceImpl::_ (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [3] = Reserved |
| [4] = DirectCall '#lib::_NamespaceImpl::_getDefault', ArgDesc num-args 0, num-type-args 0, names [] |
| [5] = Reserved |
| [6] = DirectCall '#lib::_NamespaceImpl::_create', ArgDesc num-args 2, num-type-args 0, names [] |
| [7] = Reserved |
| } |
| |
| |
| Function 'get:_namespacePointer', getter, static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| DirectCall 0, CP#0 |
| DirectCall 1, CP#2 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall '#lib::_NamespaceImpl::get:_namespace', ArgDesc num-args 0, num-type-args 0, names [] |
| [1] = Reserved |
| [2] = DirectCall '#lib::_NamespaceImpl::_getPointer', ArgDesc num-args 1, num-type-args 0, names [] |
| [3] = Reserved |
| } |
| |
| } |
| |
| } |
| ] class _NamespaceImpl extends dart.core::Object implements #lib::_Namespace { |
| static field #lib::_NamespaceImpl _cachedNamespace = null; |
| constructor _() → #lib::_NamespaceImpl |
| : super dart.core::Object::•() |
| ; |
| @#C2 |
| external static method _create(#lib::_NamespaceImpl namespace, dynamic n) → #lib::_NamespaceImpl; |
| @#C4 |
| external static method _getPointer(#lib::_NamespaceImpl namespace) → dart.core::int; |
| @#C6 |
| external static method _getDefault() → dart.core::int; |
| static method _setupNamespace(dynamic namespace) → void { |
| #lib::_NamespaceImpl::_cachedNamespace = #lib::_NamespaceImpl::_create(new #lib::_NamespaceImpl::_(), namespace); |
| } |
| static get _namespace() → #lib::_NamespaceImpl { |
| if(#lib::_NamespaceImpl::_cachedNamespace.{dart.core::Object::==}(null)) { |
| #lib::_NamespaceImpl::_cachedNamespace = #lib::_NamespaceImpl::_create(new #lib::_NamespaceImpl::_(), #lib::_NamespaceImpl::_getDefault()); |
| } |
| return #lib::_NamespaceImpl::_cachedNamespace; |
| } |
| static get _namespacePointer() → dart.core::int |
| return #lib::_NamespaceImpl::_getPointer(#lib::_NamespaceImpl::_namespace); |
| } |
| [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| |
| Function '', constructor, reflectable |
| parameters [] (required: 0) |
| return-type #lib::_Namespace |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function '_setupNamespace', static, reflectable, debuggable |
| parameters [dynamic 'namespace'] (required: 1) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall '#lib::_NamespaceImpl::_setupNamespace', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function 'get:_namespace', getter, static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type #lib::_Namespace |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| DirectCall 0, CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall '#lib::_NamespaceImpl::get:_namespace', ArgDesc num-args 0, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function 'get:_namespacePointer', getter, static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dart:core::int |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| DirectCall 0, CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall '#lib::_NamespaceImpl::get:_namespacePointer', ArgDesc num-args 0, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| } |
| |
| } |
| ] class _Namespace extends dart.core::Object { |
| synthetic constructor •() → #lib::_Namespace |
| : super dart.core::Object::•() |
| ; |
| static method _setupNamespace(dynamic namespace) → void { |
| #lib::_NamespaceImpl::_setupNamespace(namespace); |
| } |
| static get _namespace() → #lib::_Namespace |
| return #lib::_NamespaceImpl::_namespace; |
| static get _namespacePointer() → dart.core::int |
| return #lib::_NamespaceImpl::_namespacePointer; |
| } |
| [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| Field 'timerFactory', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'eventHandlerSendData', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'timerMillisecondClock', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'resourceReadAsBytes', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'packageRootString', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'packageConfigString', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'packageRootUriFuture', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'packageConfigUriFuture', type = dynamic, reflectable, static |
| value = null |
| |
| Field 'resolvePackageUriFuture', type = dynamic, reflectable, static |
| value = null |
| |
| Field '_computeScriptUri', type = dynamic, reflectable, static |
| value = null |
| |
| Field '_cachedScript', type = dynamic, reflectable, static |
| value = null |
| |
| Function '', constructor, reflectable |
| parameters [] (required: 0) |
| return-type #lib::VMLibraryHooks |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function 'set:platformScript', setter, static, reflectable, debuggable |
| parameters [dynamic 'f'] (required: 1) |
| return-type void |
| |
| |
| Bytecode { |
| Entry 1 |
| CheckStack 0 |
| Push FP[-5] |
| StoreStaticTOS CP#0 |
| PushNull |
| StoreStaticTOS CP#1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::VMLibraryHooks::_computeScriptUri (field) |
| [1] = StaticField #lib::VMLibraryHooks::_cachedScript (field) |
| } |
| |
| |
| Function 'get:platformScript', getter, static, reflectable, debuggable |
| parameters [] (required: 0) |
| return-type dynamic |
| |
| |
| Bytecode { |
| Entry 1 |
| CheckStack 0 |
| PushConstant CP#0 |
| PushStatic CP#0 |
| EqualsNull |
| JumpIfFalse L1 |
| PushConstant CP#1 |
| PushStatic CP#1 |
| EqualsNull |
| BooleanNegateTOS |
| PopLocal r0 |
| Jump L2 |
| L1: |
| PushFalse |
| PopLocal r0 |
| L2: |
| Push r0 |
| JumpIfFalse L3 |
| PushConstant CP#1 |
| PushStatic CP#1 |
| DynamicCall 1, CP#3 |
| StoreStaticTOS CP#0 |
| L3: |
| PushConstant CP#0 |
| PushStatic CP#0 |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = StaticField #lib::VMLibraryHooks::_cachedScript (field) |
| [1] = StaticField #lib::VMLibraryHooks::_computeScriptUri (field) |
| [2] = ObjectRef ArgDesc num-args 1, num-type-args 0, names [] |
| [3] = ICData dynamic target-name 'call', arg-desc CP#2 |
| } |
| |
| } |
| |
| } |
| ] class VMLibraryHooks extends dart.core::Object { |
| static field dynamic timerFactory = null; |
| static field dynamic eventHandlerSendData = null; |
| static field dynamic timerMillisecondClock = null; |
| static field dynamic resourceReadAsBytes = null; |
| static field dynamic packageRootString = null; |
| static field dynamic packageConfigString = null; |
| static field dynamic packageRootUriFuture = null; |
| static field dynamic packageConfigUriFuture = null; |
| static field dynamic resolvePackageUriFuture = null; |
| static field dynamic _computeScriptUri = null; |
| static field dynamic _cachedScript = null; |
| synthetic constructor •() → #lib::VMLibraryHooks |
| : super dart.core::Object::•() |
| ; |
| static set platformScript(dynamic f) → void { |
| #lib::VMLibraryHooks::_computeScriptUri = f; |
| #lib::VMLibraryHooks::_cachedScript = null; |
| } |
| static get platformScript() → dynamic { |
| if(#lib::VMLibraryHooks::_cachedScript.{dart.core::Object::==}(null) && !#lib::VMLibraryHooks::_computeScriptUri.{dart.core::Object::==}(null)) { |
| #lib::VMLibraryHooks::_cachedScript = [@vm.call-site-attributes.metadata=receiverType:dynamic] #lib::VMLibraryHooks::_computeScriptUri.call(); |
| } |
| return #lib::VMLibraryHooks::_cachedScript; |
| } |
| } |
| [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| |
| Function '', constructor, reflectable |
| parameters [] (required: 0) |
| return-type #lib::Stdin |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| } |
| |
| } |
| ] class Stdin extends dart.core::Object { |
| synthetic constructor •() → #lib::Stdin |
| : super dart.core::Object::•() |
| ; |
| } |
| [@vm.bytecode= |
| MembersBytecodeMetadata { |
| |
| Members { |
| |
| Function '', constructor, reflectable |
| parameters [] (required: 0) |
| return-type #lib::_StdIOUtils |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| Push FP[-5] |
| DirectCall 1, CP#0 |
| Drop1 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| [0] = DirectCall 'dart:core::Object:: (constructor)', ArgDesc num-args 1, num-type-args 0, names [] |
| [1] = Reserved |
| } |
| |
| |
| Function '_getStdioInputStream', static, reflectable, debuggable |
| parameters [dart:core::int 'fd'] (required: 1) |
| return-type #lib::Stdin |
| |
| |
| Bytecode { |
| Entry 0 |
| CheckStack 0 |
| PushNull |
| ReturnTOS |
| } |
| ConstantPool { |
| } |
| |
| } |
| |
| } |
| ] class _StdIOUtils extends dart.core::Object { |
| synthetic constructor •() → #lib::_StdIOUtils |
| : super dart.core::Object::•() |
| ; |
| static method _getStdioInputStream(dart.core::int fd) → #lib::Stdin |
| return null; |
| } |
| static field dart.core::int _stdinFD = 0; |
| static field dart.core::int _stdoutFD = 1; |
| static field dart.core::int _stderrFD = 2; |
| static field dart.core::String _rawScript; |
| static field #lib::Stdin _stdin; |
| @#C8 |
| external static method _printString(dart.core::String s) → void; |
| static method _print(dynamic arg) → void { |
| #lib::_printString(arg.{dart.core::Object::toString}()); |
| } |
| static method _getPrintClosure() → dynamic |
| return #C9; |
| static method _setScheduleImmediateClosure((() → void) → void closure) → void { |
| #lib::_ScheduleImmediate::_closure = closure; |
| } |
| static method _setStdioFDs(dart.core::int stdin, dart.core::int stdout, dart.core::int stderr) → void { |
| #lib::_stdinFD = stdin; |
| #lib::_stdoutFD = stdout; |
| #lib::_stderrFD = stderr; |
| } |
| static method _scriptUri() → dart.core::Uri { |
| if(#lib::_rawScript.{dart.core::String::startsWith}("http:") || #lib::_rawScript.{dart.core::String::startsWith}("https:") || #lib::_rawScript.{dart.core::String::startsWith}("file:")) { |
| return dart.core::Uri::parse(#lib::_rawScript); |
| } |
| else { |
| return dart.core::Uri::base.{dart.core::Uri::resolveUri}(dart.core::_Uri::file(#lib::_rawScript)); |
| } |
| } |
| static method _setupHooks() → dynamic { |
| #lib::VMLibraryHooks::platformScript = #C10; |
| } |
| static get stdin() → #lib::Stdin { |
| #lib::_stdin.{dart.core::Object::==}(null) ?{#lib::Stdin} #lib::_stdin = #lib::_StdIOUtils::_getStdioInputStream(#lib::_stdinFD) : null; |
| return #lib::_stdin; |
| } |
| static method main() → dynamic {} |
| } |
| constants { |
| #C1 = "Namespace_Create" |
| #C2 = dart._internal::ExternalName {name: #C1} |
| #C3 = "Namespace_GetPointer" |
| #C4 = dart._internal::ExternalName {name: #C3} |
| #C5 = "Namespace_GetDefault" |
| #C6 = dart._internal::ExternalName {name: #C5} |
| #C7 = "Builtin_PrintString" |
| #C8 = dart._internal::ExternalName {name: #C7} |
| #C9 = TearOffConstant(#lib::_print) |
| #C10 = TearOffConstant(#lib::_scriptUri) |
| } |