Sha256: 0afc7322b4a07b5d5bb2f15a79f5887f2f928595aa012586493e5f56808cb922
Contents?: true
Size: 562 Bytes
Versions: 12
Compression:
Stored size: 562 Bytes
Contents
module Ellen class Env attr_reader :key, :description, :options def initialize(key, description, options = {}) @key = key.to_s @description = description @options = options end def validate error if required? && missing? end def to_usage " %-30s - %s" % [key, description] end private def required? !options[:optional] end def missing? !ENV[key] end def error raise MissingRequiredKeyError, %<ENV["#{key}"] is required but missing> end end end
Version data entries
12 entries across 12 versions & 1 rubygems