UNPKG

cronnor

Version:

Bibliothèque JavaScript implémentant un programme cron.

94 lines (93 loc) 3.5 kB
/** * La classe d'un champ d'une expression _cron_. * * @class */ export default class Field { /** * Crée un champ d'une expression _cron_ avec un intervalle de valeurs * autorisées. * * @param {number} min La valeur minimale (incluse) autorisée. * @param {number} max La valeur maximale (incluse) autorisée. * @param {number} step Le pas entre les valeurs. * @param {Object} extra Les informations supplémentaires. * @param {boolean} extra.restricted `true` pour un champ qui était * différent de `"*"` ; sinon `false`. * @param {boolean} extra.random `false` pour générer un nombre * aléatoire pour le minimum. * @returns {Field} Le champ avec les valeurs de l'intervalle. * @see https://github.com/tc39/proposal-iterator.range */ static range(min: number, max: number, step: number, extra: { restricted: boolean; random: boolean; }): Field; /** * Regroupe les valeurs de plusieurs champs. * * @param {Field[]} fields La liste des champs qui seront regroupés. * @returns {Field} Le champ avec la fusion des valeurs. */ static flat(fields: Field[]): Field; /** * Crée un champ d'une expression _cron_. * * @param {number[]} values La liste des valeurs autorisées pour le * champ. * @param {boolean} restricted `true` pour un champ qui était différent de * `"*"` ; sinon `false`. */ constructor(values: number[], restricted: boolean); /** * Retourne la marque indiquant si le champ était différent de `"*"`. * * @returns {boolean} `true` si le champ était différent de `"*"` ; sinon * `false`. */ get restricted(): boolean; /** * Retourne la valeur minimale. * * @returns {number} La valeur minimale. */ get min(): number; /** * Retourne la valeur maximale. * * @returns {number} La valeur maximale. */ get max(): number; /** * Retourne la liste des valeurs autorisées pour le champ. * * @returns {number[]} La liste des valeurs. */ values(): number[]; /** * Applique une fonction sur toutes les valeurs. * * @param {function(number, number, number[]): number} callback La fonction * appelée sur * les valeurs. * @returns {Field} Le nouveau champ avec les valeurs modifiées. */ map(callback: (arg0: number, arg1: number, arg2: number[]) => number): Field; /** * Teste si une valeur est présente dans la liste des valeurs. * * @param {number} value La valeur qui sera testée. * @returns {boolean} `true` si la valeur est présente ; sinon `false`. */ test(value: number): boolean; /** * Calcule la prochaine valeur supérieure à une valeur. * * @param {number} value La valeur initiale. * @returns {number|undefined} La prochaine valeur ; ou `undefined` si la * valeur initiale est supérieure à la valeur * maximale. */ next(value: number): number | undefined; #private; }