This property is set by the runtime during command execution.
It must not be amended or overridden by modules or classes extending Command.
Command modules should override this property and provide their own options type.
The properties of the specified type declare the command line flags and arguments accepted by
the command.
Example:
extends "pkl:Command"
options: Options
class Options {
/// Maximum number of tries to attempt operation before giving up.
`max-tries`: UInt = 3
/// Duration after which operation will be timed out.
@Flag { convert = module.convertDuration; metavar = "duration" }
`connection-timeout`: Duration = 30.s
/// Whether to use cache data locally.
@BooleanFlag
cache: Boolean = true
/// Log verbosity.
@CountedFlag { shortName = "v" }
verbose: Int
/// File paths to operate on.
@Argument { completionCandidates = "paths" }
path: Listing<String>
}
Returns the relative, descendent directory path between this module and other.
Throws if no such path exists.
For example, if module mod1 has path /dir1/mod1.pkl, and module mod2 has path
/dir1/dir2/dir3/mod2.pkl, then mod1.relativePathTo(mod2) will return
List("dir2", "dir3").
A common use case is to compute the directory path between a template located at the root of a
hierarchy (say rootModule.pkl) and the currently evaluated module (accessible via the
module keyword):
The output of this module.