3 public class Fallback {
5 public internal(set) var cOpaqueStruct: LDKFallback?;
9 public init(pointer: LDKFallback){
10 self.cOpaqueStruct = pointer
13 /* OPTION_METHODS_START */
15 public enum FallbackValueType {
16 case SegWitProgram, PubKeyHash, ScriptHash
19 public func getValueType() -> FallbackValueType? {
20 switch self.cOpaqueStruct?.tag {
22 case LDKFallback_SegWitProgram:
24 case LDKFallback_PubKeyHash:
26 case LDKFallback_ScriptHash:
34 public func getValueAsSegWitProgram() -> SegWitProgram? {
35 if self.cOpaqueStruct?.tag != LDKFallback_SegWitProgram {
38 return SegWitProgram(pointer: self.cOpaqueStruct!.seg_wit_program)
41 public func getValueAsPubKeyHash() -> [UInt8]? {
42 if self.cOpaqueStruct?.tag != LDKFallback_PubKeyHash {
45 return Bindings.LDKTwentyBytes_to_array(nativeType: self.cOpaqueStruct!.pub_key_hash)
48 public func getValueAsScriptHash() -> [UInt8]? {
49 if self.cOpaqueStruct?.tag != LDKFallback_ScriptHash {
52 return Bindings.LDKTwentyBytes_to_array(nativeType: self.cOpaqueStruct!.script_hash)
56 /* OPTION_METHODS_END */
60 public class SegWitProgram {
63 var cOpaqueStruct: LDKFallback_LDKSegWitProgram_Body?;
64 fileprivate init(pointer: LDKFallback_LDKSegWitProgram_Body) {
65 self.cOpaqueStruct = pointer
70 public func getVersion() -> UInt8 {
71 return self.cOpaqueStruct!.version._0
74 public func getProgram() -> [UInt8] {
75 return Bindings.LDKCVec_u8Z_to_array(nativeType: self.cOpaqueStruct!.program)