| library #lib; |
| import self as self; |
| import "dart:core" as core; |
| import "dart:ffi" as ffi; |
| import "dart:typed_data" as typ; |
| |
| import "dart:ffi"; |
| |
| @#C3 |
| @#C8 |
| final class Vec2d extends ffi::Struct { |
| synthetic constructor •() → self::Vec2d |
| : super ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized core::Object #typedDataBase, synthesized core::int #offsetInBytes) → self::Vec2d |
| : super ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| @#C10 |
| constructor #fromTypedData(synthesized typ::TypedData #typedData, synthesized core::int #offset, synthesized core::int #sizeInBytes) → self::Vec2d |
| : super ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| @#C11 |
| @#C10 |
| get x() → core::double |
| return ffi::_loadDouble(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::Vec2d::x#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}); |
| @#C11 |
| @#C10 |
| set x(synthesized core::double #externalFieldValue) → void |
| return ffi::_storeDouble(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::Vec2d::x#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue); |
| @#C11 |
| @#C10 |
| get y() → core::double |
| return ffi::_loadDouble(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::Vec2d::y#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}); |
| @#C11 |
| @#C10 |
| set y(synthesized core::double #externalFieldValue) → void |
| return ffi::_storeDouble(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::Vec2d::y#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue); |
| @#C10 |
| static synthetic get x#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static synthetic get y#offsetOf() → core::int |
| return #C15.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static get #sizeOf() → core::int |
| return #C17.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| } |
| @#C3 |
| @#C23 |
| final class MyStruct extends ffi::Struct { |
| synthetic constructor •() → self::MyStruct |
| : super ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized core::Object #typedDataBase, synthesized core::int #offsetInBytes) → self::MyStruct |
| : super ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| @#C10 |
| constructor #fromTypedData(synthesized typ::TypedData #typedData, synthesized core::int #offset, synthesized core::int #sizeInBytes) → self::MyStruct |
| : super ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| @#C24 |
| @#C10 |
| get array() → ffi::Array<ffi::Uint8> |
| return new ffi::Array::_<ffi::Uint8>(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #C12, #C19, #C25); |
| @#C24 |
| @#C10 |
| set array(synthesized ffi::Array<ffi::Uint8> #externalFieldValue) → void |
| return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}); |
| @#C10 |
| static synthetic get array#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static get #sizeOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| } |
| @#C3 |
| @#C30 |
| final class MyStruct2 extends ffi::Struct { |
| synthetic constructor •() → self::MyStruct2 |
| : super ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized core::Object #typedDataBase, synthesized core::int #offsetInBytes) → self::MyStruct2 |
| : super ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| @#C10 |
| constructor #fromTypedData(synthesized typ::TypedData #typedData, synthesized core::int #offset, synthesized core::int #sizeInBytes) → self::MyStruct2 |
| : super ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| @#C31 |
| @#C10 |
| get array() → ffi::Array<ffi::Uint8> |
| return new ffi::Array::_<ffi::Uint8>(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct2::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #C26, #C19, #C25); |
| @#C31 |
| @#C10 |
| set array(synthesized ffi::Array<ffi::Uint8> #externalFieldValue) → void |
| return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct2::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, #C32.{core::List::[]}(ffi::_abi()){(core::int) → core::int}); |
| @#C10 |
| static synthetic get array#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static get #sizeOf() → core::int |
| return #C32.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| } |
| @#C3 |
| @#C23 |
| final class MyStruct3 extends ffi::Struct { |
| synthetic constructor •() → self::MyStruct3 |
| : super ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized core::Object #typedDataBase, synthesized core::int #offsetInBytes) → self::MyStruct3 |
| : super ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| @#C10 |
| constructor #fromTypedData(synthesized typ::TypedData #typedData, synthesized core::int #offset, synthesized core::int #sizeInBytes) → self::MyStruct3 |
| : super ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| @#C35 |
| @#C10 |
| get array() → ffi::Array<ffi::Array<ffi::Array<ffi::Uint8>>> |
| return new ffi::Array::_<ffi::Array<ffi::Array<ffi::Uint8>>>(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct3::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #C12, #C19, #C34); |
| @#C35 |
| @#C10 |
| set array(synthesized ffi::Array<ffi::Array<ffi::Array<ffi::Uint8>>> #externalFieldValue) → void |
| return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct3::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}); |
| @#C10 |
| static synthetic get array#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static get #sizeOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| } |
| @#C3 |
| @#C39 |
| final class MyStruct4 extends ffi::Struct { |
| synthetic constructor •() → self::MyStruct4 |
| : super ffi::Struct::•() |
| ; |
| constructor #fromTypedDataBase(synthesized core::Object #typedDataBase, synthesized core::int #offsetInBytes) → self::MyStruct4 |
| : super ffi::Struct::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| @#C10 |
| constructor #fromTypedData(synthesized typ::TypedData #typedData, synthesized core::int #offset, synthesized core::int #sizeInBytes) → self::MyStruct4 |
| : super ffi::Struct::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| @#C40 |
| @#C10 |
| get array() → ffi::Array<ffi::Array<ffi::Array<ffi::Uint8>>> |
| return new ffi::Array::_<ffi::Array<ffi::Array<ffi::Uint8>>>(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct4::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #C26, #C19, #C34); |
| @#C40 |
| @#C10 |
| set array(synthesized ffi::Array<ffi::Array<ffi::Array<ffi::Uint8>>> #externalFieldValue) → void |
| return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyStruct4::array#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, #C41.{core::List::[]}(ffi::_abi()){(core::int) → core::int}); |
| @#C10 |
| static synthetic get array#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static get #sizeOf() → core::int |
| return #C41.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| } |
| @#C3 |
| @#C46 |
| final class MyUnion extends ffi::Union { |
| synthetic constructor •() → self::MyUnion |
| : super ffi::Union::•() |
| ; |
| constructor #fromTypedDataBase(synthesized core::Object #typedDataBase, synthesized core::int #offsetInBytes) → self::MyUnion |
| : super ffi::Union::_fromTypedDataBase(#typedDataBase, #offsetInBytes) |
| ; |
| @#C10 |
| constructor #fromTypedData(synthesized typ::TypedData #typedData, synthesized core::int #offset, synthesized core::int #sizeInBytes) → self::MyUnion |
| : super ffi::Union::_fromTypedData(#typedData, #offset, #sizeInBytes) |
| ; |
| @#C10 |
| get vector() → self::Vec2d |
| return new self::Vec2d::#fromTypedDataBase(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyUnion::vector#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}); |
| @#C10 |
| set vector(synthesized self::Vec2d #externalFieldValue) → void |
| return ffi::_memCopy(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyUnion::vector#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, #C17.{core::List::[]}(ffi::_abi()){(core::int) → core::int}); |
| @#C10 |
| get indirectVector() → ffi::Pointer<self::Vec2d> |
| return ffi::_loadPointer<self::Vec2d>(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyUnion::indirectVector#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}); |
| @#C10 |
| set indirectVector(synthesized ffi::Pointer<self::Vec2d> #externalFieldValue) → void |
| return ffi::_storePointer<self::Vec2d>(this.{ffi::_Compound::_typedDataBase}{core::Object}, self::MyUnion::indirectVector#offsetOf.{core::num::+}(this.{ffi::_Compound::_offsetInBytes}{core::int}){(core::num) → core::num}, #externalFieldValue); |
| @#C10 |
| static synthetic get vector#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static synthetic get indirectVector#offsetOf() → core::int |
| return #C13.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| @#C10 |
| static get #sizeOf() → core::int |
| return #C17.{core::List::[]}(ffi::_abi()){(core::int) → core::int}; |
| } |
| @#C52 |
| static get aString() → ffi::Pointer<ffi::Char> |
| return ffi::_loadPointer<ffi::Char>(ffi::Native::_addressOf<ffi::Pointer<ffi::Char>>(#C51), #C12); |
| static set aString(synthesized ffi::Pointer<ffi::Char> #externalFieldValue) → void |
| ffi::_storePointer<ffi::Char>(ffi::Native::_addressOf<ffi::Pointer<ffi::Char>>(#C51), #C12, #externalFieldValue); |
| @#C55 |
| static get anInt() → core::int |
| return ffi::_loadInt32(ffi::Native::_addressOf<ffi::Int32>(#C54), #C12); |
| static set anInt(synthesized core::int #externalFieldValue) → void |
| ffi::_storeInt32(ffi::Native::_addressOf<ffi::Int32>(#C54), #C12, #externalFieldValue); |
| @#C58 |
| static get anotherInt() → core::int |
| return ffi::_loadAbiSpecificInt<ffi::Int>(ffi::Native::_addressOf<ffi::Int>(#C57), #C12); |
| static set anotherInt(synthesized core::int #externalFieldValue) → void |
| ffi::_storeAbiSpecificInt<ffi::Int>(ffi::Native::_addressOf<ffi::Int>(#C57), #C12, #externalFieldValue); |
| @#C61 |
| static get vector() → self::Vec2d |
| return new self::Vec2d::#fromTypedDataBase(ffi::Native::_addressOf<self::Vec2d>(#C60), #C12); |
| @#C64 |
| static get union() → self::MyUnion |
| return new self::MyUnion::#fromTypedDataBase(ffi::Native::_addressOf<self::MyUnion>(#C63), #C12); |
| static set union(synthesized self::MyUnion #externalFieldValue) → void |
| ffi::_memCopy(ffi::Native::_addressOf<self::MyUnion>(#C63), #C12, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, self::MyUnion::#sizeOf); |
| @#C66 |
| @#C69 |
| static get manyNumbers() → ffi::Array<ffi::Array<ffi::Array<ffi::Double>>> |
| return new ffi::Array::_<ffi::Array<ffi::Array<ffi::Double>>>(ffi::Native::_addressOf<ffi::Array<ffi::Array<ffi::Array<ffi::Double>>>>(#C68), #C12, #C26, #C50, #C70); |
| @#C66 |
| static set manyNumbers(synthesized ffi::Array<ffi::Array<ffi::Array<ffi::Double>>> #externalFieldValue) → void |
| ffi::_memCopy(ffi::Native::_addressOf<ffi::Array<ffi::Array<ffi::Array<ffi::Double>>>>(#C68), #C12, #externalFieldValue.{ffi::_Compound::_typedDataBase}{core::Object}, #externalFieldValue.{ffi::_Compound::_offsetInBytes}{core::int}, #C72.{core::List::[]}(ffi::_abi()){(core::int) → core::int}); |
| static method main() → void { |
| core::print("first char of string: ${ffi::_loadAbiSpecificInt<ffi::Char>(self::aString, #C12)}"); |
| core::print("global int: {${self::anInt}}"); |
| self::aString = ffi::nullptr; |
| self::anInt = self::anInt.{core::num::+}(1){(core::num) → core::int}; |
| final self::Vec2d vec = self::vector; |
| core::print("(${vec.{self::Vec2d::x}{core::double}}, ${vec.{self::Vec2d::y}{core::double}})"); |
| self::union.{self::MyUnion::indirectVector} = ffi::Native::_addressOf<self::Vec2d>(#C60); |
| core::print(ffi::Native::_addressOf<ffi::Int>(#C57)); |
| core::print(ffi::Native::_addressOf<self::Vec2d>(#C60)); |
| core::print(ffi::Native::_addressOf<self::MyUnion>(#C63)); |
| final ffi::Array<ffi::Array<ffi::Array<ffi::Double>>> wholeArray = self::manyNumbers; |
| ffi::DoubleArray|[]=( block { |
| synthesized ffi::Array<dynamic> #array = ( block { |
| synthesized ffi::Array<dynamic> #array = wholeArray!; |
| synthesized core::int #index = 0!; |
| #array.{ffi::Array::_checkIndex}(#index){(core::int) → void}; |
| synthesized core::int #singleElementSize = #C14; |
| synthesized core::int #elementSize = #singleElementSize.{core::num::*}(#array.{ffi::Array::_nestedDimensionsFlattened}{core::int}){(core::num) → core::num}; |
| synthesized core::int #offset = #elementSize.{core::num::*}(#index){(core::num) → core::num}; |
| } =>new ffi::Array::_<ffi::Array<ffi::Double>>(#array.{ffi::_Compound::_typedDataBase}{core::Object}, #array.{ffi::_Compound::_offsetInBytes}{core::int}.{core::num::+}(#offset){(core::num) → core::num}, #array.{ffi::Array::_nestedDimensionsFirst}{core::int}, #array.{ffi::Array::_variableLength}{core::bool}, #array.{ffi::Array::_nestedDimensionsRest}{core::List<core::int>}))!; |
| synthesized core::int #index = 1!; |
| #array.{ffi::Array::_checkIndex}(#index){(core::int) → void}; |
| synthesized core::int #singleElementSize = #C14; |
| synthesized core::int #elementSize = #singleElementSize.{core::num::*}(#array.{ffi::Array::_nestedDimensionsFlattened}{core::int}){(core::num) → core::num}; |
| synthesized core::int #offset = #elementSize.{core::num::*}(#index){(core::num) → core::num}; |
| } =>new ffi::Array::_<ffi::Double>(#array.{ffi::_Compound::_typedDataBase}{core::Object}, #array.{ffi::_Compound::_offsetInBytes}{core::int}.{core::num::+}(#offset){(core::num) → core::num}, #array.{ffi::Array::_nestedDimensionsFirst}{core::int}, #array.{ffi::Array::_variableLength}{core::bool}, #array.{ffi::Array::_nestedDimensionsRest}{core::List<core::int>}), 2, 123.45); |
| self::manyNumbers = wholeArray; |
| ffi::DoubleArray|[]=( block { |
| synthesized ffi::Array<dynamic> #array = ( block { |
| synthesized ffi::Array<dynamic> #array = self::manyNumbers!; |
| synthesized core::int #index = 0!; |
| #array.{ffi::Array::_checkIndex}(#index){(core::int) → void}; |
| synthesized core::int #singleElementSize = #C14; |
| synthesized core::int #elementSize = #singleElementSize.{core::num::*}(#array.{ffi::Array::_nestedDimensionsFlattened}{core::int}){(core::num) → core::num}; |
| synthesized core::int #offset = #elementSize.{core::num::*}(#index){(core::num) → core::num}; |
| } =>new ffi::Array::_<ffi::Array<ffi::Double>>(#array.{ffi::_Compound::_typedDataBase}{core::Object}, #array.{ffi::_Compound::_offsetInBytes}{core::int}.{core::num::+}(#offset){(core::num) → core::num}, #array.{ffi::Array::_nestedDimensionsFirst}{core::int}, #array.{ffi::Array::_variableLength}{core::bool}, #array.{ffi::Array::_nestedDimensionsRest}{core::List<core::int>}))!; |
| synthesized core::int #index = 0!; |
| #array.{ffi::Array::_checkIndex}(#index){(core::int) → void}; |
| synthesized core::int #singleElementSize = #C14; |
| synthesized core::int #elementSize = #singleElementSize.{core::num::*}(#array.{ffi::Array::_nestedDimensionsFlattened}{core::int}){(core::num) → core::num}; |
| synthesized core::int #offset = #elementSize.{core::num::*}(#index){(core::num) → core::num}; |
| } =>new ffi::Array::_<ffi::Double>(#array.{ffi::_Compound::_typedDataBase}{core::Object}, #array.{ffi::_Compound::_offsetInBytes}{core::int}.{core::num::+}(#offset){(core::num) → core::num}, #array.{ffi::Array::_nestedDimensionsFirst}{core::int}, #array.{ffi::Array::_variableLength}{core::bool}, #array.{ffi::Array::_nestedDimensionsRest}{core::List<core::int>}), 0, 54.321); |
| } |
| constants { |
| #C1 = "vm:deeply-immutable" |
| #C2 = null |
| #C3 = core::pragma {name:#C1, options:#C2} |
| #C4 = "vm:ffi:struct-fields" |
| #C5 = TypeLiteralConstant(ffi::Double) |
| #C6 = <core::Type>[#C5, #C5] |
| #C7 = ffi::_FfiStructLayout {fieldTypes:#C6, packing:#C2} |
| #C8 = core::pragma {name:#C4, options:#C7} |
| #C9 = "vm:prefer-inline" |
| #C10 = core::pragma {name:#C9, options:#C2} |
| #C11 = ffi::Double {} |
| #C12 = 0 |
| #C13 = <core::int>[#C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12, #C12] |
| #C14 = 8 |
| #C15 = <core::int>[#C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14, #C14] |
| #C16 = 16 |
| #C17 = <core::int>[#C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16, #C16] |
| #C18 = TypeLiteralConstant(ffi::Uint8) |
| #C19 = true |
| #C20 = ffi::_FfiInlineArray {elementType:#C18, length:#C12, variableLength:#C19} |
| #C21 = <core::Type>[#C20] |
| #C22 = ffi::_FfiStructLayout {fieldTypes:#C21, packing:#C2} |
| #C23 = core::pragma {name:#C4, options:#C22} |
| #C24 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C12, dimension2:#C2, dimension3:#C2, dimension4:#C2, dimension5:#C2, dimensions:#C2, variableDimension:#C12} |
| #C25 = <core::int>[] |
| #C26 = 1 |
| #C27 = ffi::_FfiInlineArray {elementType:#C18, length:#C26, variableLength:#C19} |
| #C28 = <core::Type>[#C27] |
| #C29 = ffi::_FfiStructLayout {fieldTypes:#C28, packing:#C2} |
| #C30 = core::pragma {name:#C4, options:#C29} |
| #C31 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C26, dimension2:#C2, dimension3:#C2, dimension4:#C2, dimension5:#C2, dimensions:#C2, variableDimension:#C26} |
| #C32 = <core::int>[#C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26, #C26] |
| #C33 = 2 |
| #C34 = <core::int>[#C26, #C33] |
| #C35 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C2, dimension2:#C2, dimension3:#C2, dimension4:#C2, dimension5:#C2, dimensions:#C34, variableDimension:#C12} |
| #C36 = ffi::_FfiInlineArray {elementType:#C18, length:#C33, variableLength:#C19} |
| #C37 = <core::Type>[#C36] |
| #C38 = ffi::_FfiStructLayout {fieldTypes:#C37, packing:#C2} |
| #C39 = core::pragma {name:#C4, options:#C38} |
| #C40 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C2, dimension2:#C2, dimension3:#C2, dimension4:#C2, dimension5:#C2, dimensions:#C34, variableDimension:#C26} |
| #C41 = <core::int>[#C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33, #C33] |
| #C42 = TypeLiteralConstant(self::Vec2d) |
| #C43 = TypeLiteralConstant(ffi::Pointer<core::Object>) |
| #C44 = <core::Type>[#C42, #C43] |
| #C45 = ffi::_FfiStructLayout {fieldTypes:#C44, packing:#C2} |
| #C46 = core::pragma {name:#C4, options:#C45} |
| #C47 = "cfe:ffi:native-marker" |
| #C48 = "aString" |
| #C49 = "#lib" |
| #C50 = false |
| #C51 = ffi::Native<ffi::Pointer<ffi::Char>> {symbol:#C48, assetId:#C49, isLeaf:#C50} |
| #C52 = core::pragma {name:#C47, options:#C51} |
| #C53 = "anInt" |
| #C54 = ffi::Native<ffi::Int32> {symbol:#C53, assetId:#C49, isLeaf:#C50} |
| #C55 = core::pragma {name:#C47, options:#C54} |
| #C56 = "anotherInt" |
| #C57 = ffi::Native<ffi::Int> {symbol:#C56, assetId:#C49, isLeaf:#C50} |
| #C58 = core::pragma {name:#C47, options:#C57} |
| #C59 = "vector" |
| #C60 = ffi::Native<self::Vec2d> {symbol:#C59, assetId:#C49, isLeaf:#C50} |
| #C61 = core::pragma {name:#C47, options:#C60} |
| #C62 = "union" |
| #C63 = ffi::Native<self::MyUnion> {symbol:#C62, assetId:#C49, isLeaf:#C50} |
| #C64 = core::pragma {name:#C47, options:#C63} |
| #C65 = 3 |
| #C66 = ffi::_ArraySize<ffi::NativeType> {dimension1:#C26, dimension2:#C33, dimension3:#C65, dimension4:#C2, dimension5:#C2, dimensions:#C2, variableDimension:#C2} |
| #C67 = "manyNumbers" |
| #C68 = ffi::Native<ffi::Array<ffi::Array<ffi::Array<ffi::Double>>>> {symbol:#C67, assetId:#C49, isLeaf:#C50} |
| #C69 = core::pragma {name:#C47, options:#C68} |
| #C70 = <core::int>[#C33, #C65] |
| #C71 = 48 |
| #C72 = <core::int>[#C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71, #C71] |
| } |