DartdocOption<T> class

An abstract class for interacting with dartdoc options.

This class and its implementations allow Dartdoc to declare options that are both defined in a configuration file and specified via the command line, with searching the directory tree for a proper file and overriding file options with the command line built-in. A number of sanity checks are also built in to these classes so that file existence can be verified, types constrained, and defaults provided.

Use via implementations DartdocOptionSet, DartdocOptionArgFile, DartdocOptionArgOnly, and DartdocOptionFileOnly.

Implementers

Constructors

DartdocOption(String name, T defaultsTo, String help, OptionKind optionIs, bool mustExist, ConvertYamlToType<T> _convertYamlToType, ResourceProvider resourceProvider)

Properties

argParser ArgParser
read-only
defaultsTo → T
This is the value returned if we couldn't find one otherwise.
final
hashCode int
The hash code for this object. [...]
read-only, inherited
help String
Text string for help passed on in command line options.
final
isDir bool
Set to true if this option represents the name of a directory.
read-only
isFile bool
Set to true if this option represents the name of a file.
read-only
isGlob bool
Set to true if this option represents a glob.
read-only
keys Iterable<String>
All object names starting at the root.
read-only
mustExist bool
Set to true if DartdocOption subclasses should validate that the directory or file exists. Does not imply validation of defaultsTo, and requires that one of isDir or isFile is set.
final
name String
The name of this option, not including the names of any parents.
final
optionIs OptionKind
final
parent DartdocOption<Object>
The parent of this DartdocOption, or null if this is the root.
read / write
resourceProvider ResourceProvider
final
root DartdocOption<Object>
The root DartdocOption containing this object, or this if the object has no parent.
read-only
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

add(DartdocOption<Object> option) → void
Adds a DartdocOption to the children of this DartdocOption.
addAll(Iterable<DartdocOption<Object>> options) → void
Adds a list of dartdoc options to the children of this DartdocOption.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
parseArguments(List<String> arguments) → void
Call this with argv to set up the argument overrides. Applies to all children.
toString() String
Returns a string representation of this object.
inherited
traverse(void visit(DartdocOption<Object> option)) → void
Apply the function visit to this and all children.
valueAt(Folder dir) → T
Return the calculated value of this option, given the directory as context. [...]
valueAtCurrent() → T
Calls valueAt with the working directory at the start of the program.
valueAtElement(Element element) → T
Calls valueAt on the directory this element is defined in.

Operators

operator ==(Object other) bool
The equality operator. [...]
inherited
operator [](String name) DartdocOption
Get the immediate child of this node named name.