Num.Even
Num / Even
Import
import { Num } from '@wollybeard/kit'
// Access via namespace
Num.Even.someFunction()
import * as Num from '@wollybeard/kit/num'
// Access via namespace
Num.Even.someFunction()
Functions
[F]
is
(value: unknown): boolean
Parameters:
value
- The value to check
Returns: True if value is an even integer
Type predicate to check if value is even. Returns Even & Int when the value is an even integer.
[F]
from
(value: number): number & { [EvenBrand]: true; } & { [IntBrand]: true; }
Parameters:
value
- The number to convert to Even
Returns: The value as an Even & Int
Throws:
- Error if value is not an even integer
Construct an Even integer. Throws if the value is not an even integer.
[F]
tryFrom
(value: number): (number & { [EvenBrand]: true; } & { [IntBrand]: true; }) | null
Parameters:
value
- The number to try converting
Returns: The Even & Int or null
Try to construct an Even integer. Returns null if the value is not an even integer.
[F]
next
(value: number): number & { [EvenBrand]: true; } & { [IntBrand]: true; }
Parameters:
value
- The number to get the next even from
Returns: The next even integer
Get the next even number (rounds up if odd). For any number, returns the smallest even integer greater than or equal to it.
[F]
prev
(value: number): number & { [EvenBrand]: true; } & { [IntBrand]: true; }
Parameters:
value
- The number to get the previous even from
Returns: The previous even integer
Get the previous even number (rounds down if odd). For any number, returns the largest even integer less than or equal to it.
Types
[∩]
Even
type Even = number & { [EvenBrand]: true }
Even integer.
Even integers are whole numbers that are divisible by 2. They include zero and alternate with odd numbers on the number line. Note: This type combines with Int brand for maximum type safety.