cli/options/PositionalOption.js

/**
 * @module flitter-cli/options/PositionalOption
 */

const Option = require('./Option')

/**
 * A positional CLI option. Defined without a flag.
 * @extends module:flitter-cli/options/Option~Option
 */
class PositionalOption extends Option {

    /**
     * Instantiate the option.
     * @param {string} name - the name of the option
     * @param {string} message - message describing the option
     */
    constructor(name, message = '') {
        super()

        /**
         * The name of the option.
         * @type {string}
         */
        this.name = name

        /**
         * Message describing the option.
         * @type {string}
         */
        this.message = message
    }

    /**
     * Gets the name of the option.
     * @returns {string}
     */
    get argument_name() {
        return this.name
    }
}

module.exports = exports = PositionalOption