| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | 'use strict';var util    = require('util');// Constantsvar c = require('../const');var $$ = require('../utils');var HelpFormatter = require('./formatter.js');/** * new RawDescriptionHelpFormatter(options) * new ArgumentParser({formatterClass: argparse.RawDescriptionHelpFormatter, ...}) * * Help message formatter which adds default values to argument help. * * Only the name of this class is considered a public API. All the methods * provided by the class are considered an implementation detail. **/function ArgumentDefaultsHelpFormatter(options) {  HelpFormatter.call(this, options);}util.inherits(ArgumentDefaultsHelpFormatter, HelpFormatter);ArgumentDefaultsHelpFormatter.prototype._getHelpString = function (action) {  var help = action.help;  if (action.help.indexOf('%(defaultValue)s') === -1) {    if (action.defaultValue !== c.SUPPRESS) {      var defaulting_nargs = [ c.OPTIONAL, c.ZERO_OR_MORE ];      if (action.isOptional() || (defaulting_nargs.indexOf(action.nargs) >= 0)) {        help += ' (default: %(defaultValue)s)';      }    }  }  return help;};module.exports.ArgumentDefaultsHelpFormatter = ArgumentDefaultsHelpFormatter;/** * new RawDescriptionHelpFormatter(options) * new ArgumentParser({formatterClass: argparse.RawDescriptionHelpFormatter, ...}) * * Help message formatter which retains any formatting in descriptions. * * Only the name of this class is considered a public API. All the methods * provided by the class are considered an implementation detail. **/function RawDescriptionHelpFormatter(options) {  HelpFormatter.call(this, options);}util.inherits(RawDescriptionHelpFormatter, HelpFormatter);RawDescriptionHelpFormatter.prototype._fillText = function (text, width, indent) {  var lines = text.split('\n');  lines = lines.map(function (line) {    return $$.trimEnd(indent + line);  });  return lines.join('\n');};module.exports.RawDescriptionHelpFormatter = RawDescriptionHelpFormatter;/** * new RawTextHelpFormatter(options) * new ArgumentParser({formatterClass: argparse.RawTextHelpFormatter, ...}) * * Help message formatter which retains formatting of all help text. * * Only the name of this class is considered a public API. All the methods * provided by the class are considered an implementation detail. **/function RawTextHelpFormatter(options) {  RawDescriptionHelpFormatter.call(this, options);}util.inherits(RawTextHelpFormatter, RawDescriptionHelpFormatter);RawTextHelpFormatter.prototype._splitLines = function (text) {  return text.split('\n');};module.exports.RawTextHelpFormatter = RawTextHelpFormatter;
 |