13 lines
335 B
TypeScript
13 lines
335 B
TypeScript
import overload from '../util/overload.js'
|
|
|
|
const adder = overload([
|
|
(x: number, y: number) => {
|
|
if (typeof x === 'number' && typeof y === 'number') return x + y
|
|
throw new TypeError('Can only add numbers')
|
|
},
|
|
(x: string, y: string) => 'Yay' + x + y
|
|
])
|
|
|
|
console.log(adder(1, 2))
|
|
console.log(adder('a', 'b'))
|