constant.js (1332B)
1 /*:nodoc:* 2 * class ActionStoreConstant 3 * 4 * This action stores the value specified by the const keyword argument. 5 * (Note that the const keyword argument defaults to the rather unhelpful null.) 6 * The 'store_const' action is most commonly used with optional 7 * arguments that specify some sort of flag. 8 * 9 * This class inherited from [[Action]] 10 **/ 11 'use strict'; 12 13 var util = require('util'); 14 15 var Action = require('../../action'); 16 17 /*:nodoc:* 18 * new ActionStoreConstant(options) 19 * - options (object): options hash see [[Action.new]] 20 * 21 **/ 22 var ActionStoreConstant = module.exports = function ActionStoreConstant(options) { 23 options = options || {}; 24 options.nargs = 0; 25 if (typeof options.constant === 'undefined') { 26 throw new Error('constant option is required for storeAction'); 27 } 28 Action.call(this, options); 29 }; 30 util.inherits(ActionStoreConstant, Action); 31 32 /*:nodoc:* 33 * ActionStoreConstant#call(parser, namespace, values, optionString) -> Void 34 * - parser (ArgumentParser): current parser 35 * - namespace (Namespace): namespace for output data 36 * - values (Array): parsed values 37 * - optionString (Array): input option string(not parsed) 38 * 39 * Call the action. Save result in namespace object 40 **/ 41 ActionStoreConstant.prototype.call = function (parser, namespace) { 42 namespace.set(this.dest, this.constant); 43 };