decodeNativeCallResult function
Decodes an ABI-10 packed call result or a retained legacy status return.
This is exported only through package:ephemeris/ffi.dart for the official
extension packages. Application code should consume OperationResult
records instead of native return words.
Implementation
DecodedCallResult decodeNativeCallResult(int rawResult) {
if (rawResult >= 0) {
return (status: 0, flags: ResultFlags(rawResult & 0xffffffff));
}
if (rawResult >= -0x80000000) {
return (status: rawResult, flags: ResultFlags.none);
}
return (status: rawResult >> 32, flags: ResultFlags(rawResult & 0xffffffff));
}