Class: YARD::CLI::YardoptsCommand Abstract
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
Command
|
|
Instance Chain:
self,
Command
|
|
Inherits: |
YARD::CLI::Command
|
Defined in: | lib/yard/cli/yardopts_command.rb |
Overview
This class is abstract.
Abstract base class for command that reads .yardopts file
Constant Summary
-
DEFAULT_YARDOPTS_FILE =
The configuration filename to load extra options from
".yardopts"
Class Method Summary
-
.new ⇒ YardoptsCommand
constructor
Creates a new command that reads .yardopts.
Command
- Inherited
.run | Helper method to run the utility on an instance. |
Instance Attribute Summary
-
#options_file ⇒ String
rw
The options file name (defaults to DEFAULT_YARDOPTS_FILE).
- #use_document_file ⇒ Boolean rw
- #use_yardopts_file ⇒ Boolean rw
Instance Method Summary
-
#parse_arguments(*args) ⇒ Boolean
Parses commandline arguments.
- #parse_rdoc_document_file(file = '.document') private
- #parse_yardopts(file = options_file) private
-
#parse_yardopts_options(*args)
private
Parses out the yardopts/document options.
-
#support_rdoc_document_file!(file = '.document') ⇒ Array<String>
private
Reads a .document file in the directory to get source file globs.
-
#yardopts(file = options_file) ⇒ Array<String>
private
Parses the .yardopts file for default yard options.
Command
- Inherited
Constructor Details
.new ⇒ YardoptsCommand
Creates a new command that reads .yardopts
# File 'lib/yard/cli/yardopts_command.rb', line 25
def initialize super @options_file = DEFAULT_YARDOPTS_FILE @use_yardopts_file = true @use_document_file = true end
Instance Attribute Details
#options_file ⇒ String (rw)
The options file name (defaults to DEFAULT_YARDOPTS_FILE)
# File 'lib/yard/cli/yardopts_command.rb', line 22
attr_accessor :
#use_document_file ⇒ Boolean
(rw)
# File 'lib/yard/cli/yardopts_command.rb', line 18
attr_accessor :use_document_file
#use_yardopts_file ⇒ Boolean
(rw)
# File 'lib/yard/cli/yardopts_command.rb', line 15
attr_accessor :use_yardopts_file
Instance Method Details
#parse_arguments(*args) ⇒ Boolean
Parses commandline arguments
# File 'lib/yard/cli/yardopts_command.rb', line 36
def parse_arguments(*args) (*args) # Parse files and then command line arguments parse_rdoc_document_file parse_yardopts optparse(*args) end
#parse_rdoc_document_file(file = '.document') (private)
# File 'lib/yard/cli/yardopts_command.rb', line 92
def parse_rdoc_document_file(file = '.document') optparse(*support_rdoc_document_file!(file)) if use_document_file end
#parse_yardopts(file = options_file) (private)
# File 'lib/yard/cli/yardopts_command.rb', line 96
def parse_yardopts(file = ) optparse(*yardopts(file)) if use_yardopts_file end
#parse_yardopts_options(*args) (private)
Parses out the yardopts/document options
# File 'lib/yard/cli/yardopts_command.rb', line 78
def (*args) opts = OptionParser.new opts.base.long.clear # HACK: why are --help and --version defined? (opts) begin opts.parse(args) rescue OptionParser::ParseError => err idx = args.index(err.args.first) args = args[(idx + 1)..-1] args.shift while args.first && args.first[0, 1] != '-' retry end end
#support_rdoc_document_file!(file = '.document') ⇒ Array<String> (private)
Reads a .document file in the directory to get source file globs
# File 'lib/yard/cli/yardopts_command.rb', line 102
def support_rdoc_document_file!(file = '.document') return [] unless use_document_file File.read(file).gsub(/^[ \t]*#.+/m, '').split(/\s+/) rescue Errno::ENOENT [] end
#yardopts(file = options_file) ⇒ Array<String> (private)
Parses the .yardopts file for default yard options
# File 'lib/yard/cli/yardopts_command.rb', line 70
def yardopts(file = ) return [] unless use_yardopts_file File.read_binary(file).shell_split rescue Errno::ENOENT [] end