lib/commands/loadCompleteOptionsCmd.js
function loadCompleteOptionsCmd(options) {
    if(!options || typeof options !== 'object')
        throw new Error('expected options object')

    if(!options.getOptions)
        options = new BasicOptions(options)

    return options.file ? new CompositeOptions([new MultiOptions(options.file), options]) : options
}
function loadCompleteOptionsCmd(options) {
    if(!options || typeof options !== 'object')
        throw new Error('expected options object')

    if(!options.getOptions)
        options = new BasicOptions(options)

    return options.file ? new CompositeOptions([new MultiOptions(options.file), options]) : options
}
function loadCompleteOptionsCmd ( options ) { if ( ! options || typeof options !== 'object' ) throw new Error ( 'expected options object' ) if ( ! options . getOptions ) options = new BasicOptions ( options ) return options . file ? new CompositeOptions ( [ new MultiOptions ( options . file ) , options ] ) : options }
Loads a complete set of configuration options.  If the options passed to the command contains a reference to
an options file then options will be loaded and merged with the original options and a new options object
is returned representing the full and complete options of the system.

NOTE that recursive loading of options files is not supported to maintain simplicity. A strong use case
is not apparent for the recursive scenario.

@param options an object literal containing user defined options
@returns CompositeObject
Loads a complete set of configuration options . If the options passed to the command contains a reference to an options file then options will be loaded and merged with the original options and a new options object is returned representing the full and complete options of the system .