static get DEFINITION_FUNCTIONS() {
    if (this.DefinitionFunctions === undefined) {
      // Keep the keys intact with ShiftTypes
      this.DefinitionFunctions = Object.freeze({
        years: { setFunc: this.setFullYear, getFunc: this.getFullYear },
        months: { setFunc: this.setMonth, getFunc: this.getMonth },
        days: { setFunc: this.setDate, getFunc: this.getDate },
        hours: { setFunc: this.setHours, getFunc: this.getHours },
        minutes: { setFunc: this.setMinutes, getFunc: this.getMinutes },
        seconds: { setFunc: this.setSeconds, getFunc: this.getSeconds },
        milliseconds: { setFunc: this.setMilliseconds, getFunc: this.getMilliseconds }
      });
    }

    return this.DefinitionFunctions;
  }
/**
   * Gets a set of functions to work with Javascript's Date objects depending on the definition type.
   * For example, if we work with minutes, what function we should invoke to set the minutes of the Date object?
   * @type {Object}
   */
Gets a set of functions to work with Javascript's Date objects depending on the definition type.
For example, if we work with minutes, what function we should invoke to set the minutes of the Date object.
@type {Object}
Gets a set of functions to work with Javascript ' s Date objects depending on the definition type . For example if we work with minutes what function we should invoke to set the minutes of the Date object . @type { Object }
static get DEFINITION_FUNCTIONS() {
    if (this.DefinitionFunctions === undefined) {
      this.DefinitionFunctions = Object.freeze({
        years: { setFunc: this.setFullYear, getFunc: this.getFullYear },
        months: { setFunc: this.setMonth, getFunc: this.getMonth },
        days: { setFunc: this.setDate, getFunc: this.getDate },
        hours: { setFunc: this.setHours, getFunc: this.getHours },
        minutes: { setFunc: this.setMinutes, getFunc: this.getMinutes },
        seconds: { setFunc: this.setSeconds, getFunc: this.getSeconds },
        milliseconds: { setFunc: this.setMilliseconds, getFunc: this.getMilliseconds }
      });
    }
    return this.DefinitionFunctions;
  }
static get DEFINITION_FUNCTIONS ( ) { if ( this . DefinitionFunctions === undefined ) { this . DefinitionFunctions = Object . freeze ( { years : { setFunc : this . setFullYear , getFunc : this . getFullYear } , months : { setFunc : this . setMonth , getFunc : this . getMonth } , days : { setFunc : this . setDate , getFunc : this . getDate } , hours : { setFunc : this . setHours , getFunc : this . getHours } , minutes : { setFunc : this . setMinutes , getFunc : this . getMinutes } , seconds : { setFunc : this . setSeconds , getFunc : this . getSeconds } , milliseconds : { setFunc : this . setMilliseconds , getFunc : this . getMilliseconds } } ) ; } return this . DefinitionFunctions ; }
Gets a set of functions to work with Javascript's Date objects depending on the definition type.
Gets a set of functions to work with Javascript ' s Date objects depending on the definition type .
// Keep the keys intact with ShiftTypes