2310a2eea6253363e2ae486a24c9a8532fbf556a
[ldk-java] / ts / structs / PaymentSendFailure.ts
1
2 import CommonBase from './CommonBase';
3 import * as bindings from '../bindings' // TODO: figure out location
4
5 export default class PaymentSendFailure extends CommonBase {
6         protected constructor(_dummy: object, ptr: number) { super(ptr); }
7         protected finalize() {
8                 super.finalize();
9                 if (this.ptr != 0) { bindings.PaymentSendFailure_free(this.ptr); }
10         }
11         static constr_from_ptr(ptr: number): PaymentSendFailure {
12                 const raw_val: bindings.LDKPaymentSendFailure = bindings.LDKPaymentSendFailure_ref_from_ptr(ptr);
13                 if (raw_val instanceof bindings.LDKPaymentSendFailure.ParameterError) {
14                         return new ParameterError(this.ptr, raw_val);
15                 }
16                 if (raw_val instanceof bindings.LDKPaymentSendFailure.PathParameterError) {
17                         return new PathParameterError(this.ptr, raw_val);
18                 }
19                 if (raw_val instanceof bindings.LDKPaymentSendFailure.AllFailedRetrySafe) {
20                         return new AllFailedRetrySafe(this.ptr, raw_val);
21                 }
22                 if (raw_val instanceof bindings.LDKPaymentSendFailure.PartialFailure) {
23                         return new PartialFailure(this.ptr, raw_val);
24                 }
25                 throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface
26         }
27
28 }
29 export class ParameterError extends PaymentSendFailure {
30         private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.ParameterError) {
31                 super(null, ptr);
32         }
33 }
34 export class PathParameterError extends PaymentSendFailure {
35         private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.PathParameterError) {
36                 super(null, ptr);
37         }
38 }
39 export class AllFailedRetrySafe extends PaymentSendFailure {
40         private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.AllFailedRetrySafe) {
41                 super(null, ptr);
42         }
43 }
44 export class PartialFailure extends PaymentSendFailure {
45         private constructor(ptr: number, obj: bindings.LDKPaymentSendFailure.PartialFailure) {
46                 super(null, ptr);
47         }
48 }