X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;ds=sidebyside;f=ts%2Fstructs%2FInitFeatures.mts;h=9399d9a73ca842f6c9d41b74961e05cb4820f5a3;hb=c629a01650402c8e2f9b9db8ced9ed63ce687727;hp=2eda7226b4bb2ae8e4ad25893216b6818a68dfab;hpb=2a65456aa0b540060dcf3ca707a54dc98cc3f38a;p=ldk-java diff --git a/ts/structs/InitFeatures.mts b/ts/structs/InitFeatures.mts index 2eda7226..9399d9a7 100644 --- a/ts/structs/InitFeatures.mts +++ b/ts/structs/InitFeatures.mts @@ -279,15 +279,22 @@ import { MultiThreadedLockableScore } from '../structs/MultiThreadedLockableScor import CommonBase from './CommonBase.mjs'; import * as bindings from '../bindings.mjs' -import * as InternalUtils from '../InternalUtils.mjs' +/** + * Features used within an `init` message. + */ export class InitFeatures extends CommonBase { /* @internal */ public constructor(_dummy: object, ptr: number) { super(ptr, bindings.InitFeatures_free); } + /** + * Checks if two InitFeaturess contain equal inner contents. + * This ignores pointers and is_owned flags and looks at the values in fields. + * Two objects with NULL inner values will be considered "equal" here. + */ public eq(b: InitFeatures): boolean { const ret: boolean = bindings.InitFeatures_eq(this.ptr, b == null ? 0 : CommonBase.get_ptr_of(b) & ~1); CommonBase.add_ref_from(this, b); @@ -299,6 +306,9 @@ export class InitFeatures extends CommonBase { return ret; } + /** + * Creates a copy of the InitFeatures + */ public clone(): InitFeatures { const ret: number = bindings.InitFeatures_clone(this.ptr); const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); @@ -306,6 +316,9 @@ export class InitFeatures extends CommonBase { return ret_hu_conv; } + /** + * Create a blank Features with no features set + */ public static constructor_empty(): InitFeatures { const ret: number = bindings.InitFeatures_empty(); const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); @@ -313,6 +326,9 @@ export class InitFeatures extends CommonBase { return ret_hu_conv; } + /** + * Creates a Features with the bits set which are known by the implementation + */ public static constructor_known(): InitFeatures { const ret: number = bindings.InitFeatures_known(); const ret_hu_conv: InitFeatures = new InitFeatures(null, ret); @@ -320,18 +336,29 @@ export class InitFeatures extends CommonBase { return ret_hu_conv; } + /** + * Returns true if this `Features` object contains unknown feature flags which are set as + * \"required\". + */ public requires_unknown_bits(): boolean { const ret: boolean = bindings.InitFeatures_requires_unknown_bits(this.ptr); return ret; } + /** + * Serialize the InitFeatures object into a byte array which can be read by InitFeatures_read + */ public write(): Uint8Array { - const ret: Uint8Array = bindings.InitFeatures_write(this.ptr); - return ret; + const ret: number = bindings.InitFeatures_write(this.ptr); + const ret_conv: Uint8Array = bindings.decodeUint8Array(ret); + return ret_conv; } + /** + * Read a InitFeatures from a byte array, created by InitFeatures_write + */ public static constructor_read(ser: Uint8Array): Result_InitFeaturesDecodeErrorZ { - const ret: number = bindings.InitFeatures_read(ser); + const ret: number = bindings.InitFeatures_read(bindings.encodeUint8Array(ser)); const ret_hu_conv: Result_InitFeaturesDecodeErrorZ = Result_InitFeaturesDecodeErrorZ.constr_from_ptr(ret); return ret_hu_conv; }