Class: XDG::Paths::Directory
- Inherits:
-
Object
- Object
- XDG::Paths::Directory
- Defined in:
- lib/xdg/paths/directory.rb
Overview
A collection of XDG directories.
Constant Summary collapse
- DELIMITER =
":"
Instance Method Summary collapse
- #default ⇒ Object
- #dynamic ⇒ Object
-
#initialize(pair, environment = ENV) ⇒ Directory
constructor
A new instance of Directory.
- #inspect ⇒ Object
- #to_s ⇒ Object (also: #to_str)
Constructor Details
#initialize(pair, environment = ENV) ⇒ Directory
Returns a new instance of Directory.
11 12 13 14 |
# File 'lib/xdg/paths/directory.rb', line 11 def initialize pair, environment = ENV @pair = pair @environment = environment end |
Instance Method Details
#default ⇒ Object
16 |
# File 'lib/xdg/paths/directory.rb', line 16 def default = value.split(DELIMITER).map { |path| path } |
#dynamic ⇒ Object
18 19 20 21 22 23 |
# File 'lib/xdg/paths/directory.rb', line 18 def dynamic String(environment[key]).then { |env_value| env_value.empty? ? value : env_value } .split(DELIMITER) .uniq .map { |path| path } end |
#inspect ⇒ Object
29 30 31 32 33 34 |
# File 'lib/xdg/paths/directory.rb', line 29 def inspect pairs = to_s type = self.class pairs.empty? ? "#<#{type}:#{object_id}>" : "#<#{type}:#{object_id} #{self}>" end |