Skip to content
This repository was archived by the owner on Jan 13, 2025. It is now read-only.

Commit 88ada45

Browse files
authored
Fix typing inconsistencies with union (#4)
* Fix typing inconsistencies with union * Further fix union typing inconsistencies
1 parent c5af9a7 commit 88ada45

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/Layout.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@
132132

133133
'use strict';
134134

135-
import {Buffer} from 'buffer';
135+
import { Buffer } from 'buffer';
136136

137137
/* Convenience type alias for objects.
138138
*
@@ -1438,9 +1438,9 @@ export class Union extends Layout<LayoutObject> {
14381438
configGetSourceVariant: (getSourceVariant: (src: LayoutObject) => VariantLayout | undefined) => void;
14391439

14401440
constructor(
1441-
discr: Layout<LayoutObject> | UnionDiscriminator,
1442-
defaultLayout: Layout<LayoutObject> | null,
1443-
property: string
1441+
discr: UInt | UIntBE | ExternalLayout | UnionDiscriminator,
1442+
defaultLayout?: Layout<LayoutObject> | null,
1443+
property?: string
14441444
) {
14451445
let discriminator: UnionDiscriminator;
14461446
if ((discr instanceof UInt)
@@ -2623,12 +2623,12 @@ export const seq = (<T>(elementLayout: Layout<T>, count: number | ExternalLayout
26232623
new Sequence<T>(elementLayout, count, property));
26242624

26252625
/** Factory for {@link Union} values. */
2626-
export const union = ((discr: Layout<LayoutObject> | UnionDiscriminator,
2627-
defaultLayout: Layout<LayoutObject> | null, property: string): Union =>
2626+
export const union = ((discr: UInt | UIntBE | ExternalLayout | UnionDiscriminator,
2627+
defaultLayout?: Layout<LayoutObject> | null, property?: string): Union =>
26282628
new Union(discr, defaultLayout, property));
26292629

26302630
/** Factory for {@link UnionLayoutDiscriminator} values. */
2631-
export const unionLayoutDiscriminator = ((layout: ExternalLayout, property: string): UnionLayoutDiscriminator =>
2631+
export const unionLayoutDiscriminator = ((layout: ExternalLayout, property?: string): UnionLayoutDiscriminator =>
26322632
new UnionLayoutDiscriminator(layout, property));
26332633

26342634
/** Factory for {@link Blob} values. */

0 commit comments

Comments
 (0)