ReadonlycombinatorReadonlyrepositoryThe underlying read-only store that maps flag names to their bit values.
ProtectedcoerceInternalConverts a raw value or string representation into the registry's native bit type TBit.
A native bit value or its string representation.
The parsed value as TBit.
ParseError if value cannot be converted to a valid non-negative TBit.
Returns all [name, bit] pairs for registered flags in registration order.
Same as registry.repository.entries().
Returns the raw bit value assigned to the given flag name.
Same as registry.repository.get()
The registered flag name to look up.
The bit value for flagName.
UnknownFlagError if flagName is not registered.
Returns all registered flag names in registration order.
Same as registry.repository.keys().
Parses a raw bit value or string into a Flag.
String values may use numeric prefixes: "0b" for binary, "0o" for octal,
"0x" for hexadecimal, or a plain decimal string.
The bit value or string representation to parse.
A Flag whose Flag.bits equal the parsed value.
ParseError if value cannot be converted to TBit.
UnknownBitsError if the parsed value contains bits not present in any registered flag.
StaticdefineCreates a BigIntFlagRegistry from an explicit name-to-bit mapping.
Use this factory when you need precise control over bit values — for example, when values must match an external protocol, a database column, or a legacy enum.
A plain object whose keys are flag names and values are the
bigint bit values to assign to each flag.
A new FlagRegistry typed to the given flag names and branded
with TBrand.
NotPositiveError if any value is ≤ 0n.
DuplicateError if two flags share the same bit value.
NotPowerOfTwoError if any value is not a power of two.
Protected StaticfindInternalFinds duplicates from the passed array.
array with flag names.
array with all duplicates.
StaticfromCreates a BigIntFlagRegistry from a list of flag names, auto-assigning
consecutive powers of two as bit values.
The first name receives 2n ** 0n = 1n, the second 2n ** 1n = 2n,
the third 2n ** 2n = 4n, and so on. Because bigint has no fixed width,
the registry supports an unlimited number of flags.
Flag names in registration order. Each name must be unique.
A new FlagRegistry typed to the given flag names and branded
with TBrand.
DuplicateFlagsError if any name appears more than once.
Protected StatichasInternalChecks whether the passed array has duplicate values.
array with flag names.
true if the array has duplicates and false otherwise.
The bitwise combinator used internally to perform AND, OR, NOT, and other operations on values of type
TBit.