purchase method

Future<PaymentResult> purchase(
  1. String id,
  2. String? developerPayload
)

Implementation

Future<PaymentResult> purchase(String id, String? developerPayload) async {
  const String __pigeon_channelName = 'dev.flutter.pigeon.flutter_rustore_billing.RustoreBilling.purchase';
  final BasicMessageChannel<Object?> __pigeon_channel = BasicMessageChannel<Object?>(
    __pigeon_channelName,
    pigeonChannelCodec,
    binaryMessenger: __pigeon_binaryMessenger,
  );
  final List<Object?>? __pigeon_replyList =
      await __pigeon_channel.send(<Object?>[id, developerPayload]) as List<Object?>?;
  if (__pigeon_replyList == null) {
    throw _createConnectionError(__pigeon_channelName);
  } else if (__pigeon_replyList.length > 1) {
    throw PlatformException(
      code: __pigeon_replyList[0]! as String,
      message: __pigeon_replyList[1] as String?,
      details: __pigeon_replyList[2],
    );
  } else if (__pigeon_replyList[0] == null) {
    throw PlatformException(
      code: 'null-error',
      message: 'Host platform returned null value for non-null return value.',
    );
  } else {
    return (__pigeon_replyList[0] as PaymentResult?)!;
  }
}