tiny-types
Version:
A tiny library that brings Tiny Types to JavaScript and TypeScript
24 lines • 725 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isInteger = isInteger;
const Predicate_1 = require("./Predicate");
/**
* @desc Ensures that the `value` is an integer {@link Number}.
*
* @example
* import { ensure, isInteger, TinyType } from 'tiny-types';
*
* class AgeInYears extends TinyType {
* constructor(public readonly value: number) {
* ensure('Age in years', value, isInteger());
* }
* }
*
* @returns {Predicate<number>}
*/
function isInteger() {
return Predicate_1.Predicate.to(`be an integer`, (value) => typeof value === 'number' &&
Number.isFinite(value) &&
Math.floor(value) === value);
}
//# sourceMappingURL=isInteger.js.map