| main = b::main; |
| library from "org-dartlang-test:///a.dart" as a { |
| |
| import "dart:ffi"; |
| |
| @#C7 |
| final class StructA extends dart.ffi::Struct { |
| synthetic constructor •() → a::StructA |
| : super dart.ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized dart.core::Object #typedDataBase, synthesized dart.core::int #offsetInBytes) → a::StructA |
| : super dart.ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| constructor #fromTypedData(synthesized dart.typed_data::TypedData #typedData, synthesized dart.core::int #offset, synthesized dart.core::int #sizeInBytes) → a::StructA |
| : super dart.ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| get a1() → dart.ffi::Pointer<dart.ffi::Void> |
| return dart.ffi::_loadPointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::a1#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set a1(synthesized dart.ffi::Pointer<dart.ffi::Void> #externalFieldValue) → void |
| return dart.ffi::_storePointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::a1#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue); |
| get a2() → dart.ffi::Pointer<dart.ffi::Void> |
| return dart.ffi::_loadPointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::a2#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set a2(synthesized dart.ffi::Pointer<dart.ffi::Void> #externalFieldValue) → void |
| return dart.ffi::_storePointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::a2#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue); |
| get a3() → dart.ffi::Pointer<dart.ffi::Void> |
| return dart.ffi::_loadPointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::a3#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set a3(synthesized dart.ffi::Pointer<dart.ffi::Void> #externalFieldValue) → void |
| return dart.ffi::_storePointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::a3#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue); |
| get blah() → a::NestedStruct |
| return new a::NestedStruct::#fromTypedDataBase(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::blah#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set blah(synthesized a::NestedStruct #externalFieldValue) → void |
| return dart.ffi::_memCopy(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::StructA::blah#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, #externalFieldValue.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}, #C10.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}); |
| @#C12 |
| static get a1#offsetOf() → dart.core::int |
| return #C14.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get a2#offsetOf() → dart.core::int |
| return #C17.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get a3#offsetOf() → dart.core::int |
| return #C19.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get blah#offsetOf() → dart.core::int |
| return #C10.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get #sizeOf() → dart.core::int* |
| return #C21.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| } |
| @#C24 |
| final class NestedStruct extends dart.ffi::Struct { |
| synthetic constructor •() → a::NestedStruct |
| : super dart.ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized dart.core::Object #typedDataBase, synthesized dart.core::int #offsetInBytes) → a::NestedStruct |
| : super dart.ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| constructor #fromTypedData(synthesized dart.typed_data::TypedData #typedData, synthesized dart.core::int #offset, synthesized dart.core::int #sizeInBytes) → a::NestedStruct |
| : super dart.ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| get n1() → dart.ffi::Pointer<dart.ffi::Void> |
| return dart.ffi::_loadPointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::NestedStruct::n1#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set n1(synthesized dart.ffi::Pointer<dart.ffi::Void> #externalFieldValue) → void |
| return dart.ffi::_storePointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::NestedStruct::n1#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue); |
| get n2() → dart.ffi::Pointer<dart.ffi::Void> |
| return dart.ffi::_loadPointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::NestedStruct::n2#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set n2(synthesized dart.ffi::Pointer<dart.ffi::Void> #externalFieldValue) → void |
| return dart.ffi::_storePointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::NestedStruct::n2#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue); |
| get n3() → dart.ffi::Pointer<dart.ffi::Void> |
| return dart.ffi::_loadPointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::NestedStruct::n3#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set n3(synthesized dart.ffi::Pointer<dart.ffi::Void> #externalFieldValue) → void |
| return dart.ffi::_storePointer<dart.ffi::Void>(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, a::NestedStruct::n3#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue); |
| @#C12 |
| static get n1#offsetOf() → dart.core::int |
| return #C14.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get n2#offsetOf() → dart.core::int |
| return #C17.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get n3#offsetOf() → dart.core::int |
| return #C19.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get #sizeOf() → dart.core::int* |
| return #C10.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| } |
| } |
| library from "org-dartlang-test:///b.dart" as b { |
| |
| import "dart:ffi"; |
| import "dart:isolate"; |
| import "dart:async"; |
| import "org-dartlang-test:///a.dart"; |
| |
| @#C28 |
| final class StructB extends dart.ffi::Struct { |
| synthetic constructor •() → b::StructB |
| : super dart.ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized dart.core::Object #typedDataBase, synthesized dart.core::int #offsetInBytes) → b::StructB |
| : super dart.ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| constructor #fromTypedData(synthesized dart.typed_data::TypedData #typedData, synthesized dart.core::int #offset, synthesized dart.core::int #sizeInBytes) → b::StructB |
| : super dart.ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| get b1() → a::StructA |
| return new a::StructA::#fromTypedDataBase(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, b::StructB::b1#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}); |
| set b1(synthesized a::StructA #externalFieldValue) → void |
| return dart.ffi::_memCopy(this.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, b::StructB::b1#offsetOf.{dart.core::num::+}(this.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}){(dart.core::num) → dart.core::num}, #externalFieldValue.{dart.ffi::_Compound::_typedDataBase}{dart.core::Object}, #externalFieldValue.{dart.ffi::_Compound::_offsetInBytes}{dart.core::int}, #C21.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}); |
| @#C12 |
| static get b1#offsetOf() → dart.core::int |
| return #C14.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| @#C12 |
| static get #sizeOf() → dart.core::int* |
| return #C21.{dart.core::List::[]}(dart.ffi::_abi()){(dart.core::int) → dart.core::int*}; |
| } |
| static method periodic() → void { |
| dart.core::print(b::StructB::#sizeOf); |
| } |
| static method main() → void { |
| dart.async::Timer::periodic(#C30, (dart.async::Timer _) → void => b::periodic()); |
| } |
| } |
| constants { |
| #C1 = "vm:ffi:struct-fields" |
| #C2 = TypeLiteralConstant(dart.ffi::Pointer<dart.core::Object>) |
| #C3 = TypeLiteralConstant(a::NestedStruct) |
| #C4 = <dart.core::Type>[#C2, #C2, #C2, #C3] |
| #C5 = null |
| #C6 = dart.ffi::_FfiStructLayout {fieldTypes:#C4, packing:#C5} |
| #C7 = dart.core::pragma {name:#C1, options:#C6} |
| #C8 = 12 |
| #C9 = 24 |
| #C10 = <dart.core::int*>[#C8, #C9, #C8, #C9, #C9, #C9, #C9, #C9, #C8, #C9, #C9, #C8, #C9, #C8, #C9, #C8, #C9, #C9, #C9, #C9, #C8, #C9] |
| #C11 = "vm:prefer-inline" |
| #C12 = dart.core::pragma {name:#C11, options:#C5} |
| #C13 = 0 |
| #C14 = <dart.core::int*>[#C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13, #C13] |
| #C15 = 4 |
| #C16 = 8 |
| #C17 = <dart.core::int*>[#C15, #C16, #C15, #C16, #C16, #C16, #C16, #C16, #C15, #C16, #C16, #C15, #C16, #C15, #C16, #C15, #C16, #C16, #C16, #C16, #C15, #C16] |
| #C18 = 16 |
| #C19 = <dart.core::int*>[#C16, #C18, #C16, #C18, #C18, #C18, #C18, #C18, #C16, #C18, #C18, #C16, #C18, #C16, #C18, #C16, #C18, #C18, #C18, #C18, #C16, #C18] |
| #C20 = 48 |
| #C21 = <dart.core::int*>[#C9, #C20, #C9, #C20, #C20, #C20, #C20, #C20, #C9, #C20, #C20, #C9, #C20, #C9, #C20, #C9, #C20, #C20, #C20, #C20, #C9, #C20] |
| #C22 = <dart.core::Type>[#C2, #C2, #C2] |
| #C23 = dart.ffi::_FfiStructLayout {fieldTypes:#C22, packing:#C5} |
| #C24 = dart.core::pragma {name:#C1, options:#C23} |
| #C25 = TypeLiteralConstant(a::StructA) |
| #C26 = <dart.core::Type>[#C25] |
| #C27 = dart.ffi::_FfiStructLayout {fieldTypes:#C26, packing:#C5} |
| #C28 = dart.core::pragma {name:#C1, options:#C27} |
| #C29 = 1000000 |
| #C30 = dart.core::Duration {_duration:#C29} |
| } |
| |
| |
| Constructor coverage from constants: |
| org-dartlang-test:///b.dart: |
| - Duration. (from org-dartlang-sdk:///sdk/lib/core/duration.dart) |
| - Duration._microseconds (from org-dartlang-sdk:///sdk/lib/core/duration.dart) |
| - Object. (from org-dartlang-sdk:///sdk/lib/core/object.dart) |
| |