Class: Hanami::Utils::PathPrefix
- Defined in:
- gems/gems/hanami-utils-1.3.3/lib/hanami/utils/path_prefix.rb,
gems/gems/hanami-utils-1.3.8/lib/hanami/utils/path_prefix.rb
Overview
Prefixed string
Instance Method Summary collapse
-
#initialize(string = nil, separator = DEFAULT_SEPARATOR) ⇒ PathPrefix
constructor
Initialize the path prefix.
-
#join(*strings) ⇒ Hanami::Utils::PathPrefix
Joins self with the given token.
-
#relative_join(strings, separator = @separator) ⇒ Hanami::Utils::PathPrefix
Joins self with the given token, without prefixing it with
separator
.
Methods inherited from String
#==, capitalize, #capitalize, classify, #classify, dasherize, #dasherize, demodulize, #demodulize, #gsub, #hash, namespace, #namespace, pluralize, rsub, #rsub, #scan, singularize, #split, titleize, #titleize, #to_s, #tokenize, transform, underscore, #underscore
Constructor Details
#initialize(string = nil, separator = DEFAULT_SEPARATOR) ⇒ PathPrefix
Initialize the path prefix
Source: | on GitHub
def initialize(string = nil, separator = DEFAULT_SEPARATOR) super(string) @separator = separator end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Hanami::Utils::String
Instance Method Details
#join(*strings) ⇒ Hanami::Utils::PathPrefix
Joins self with the given token. It cleans up all the separator
repetitions.
Source: | on GitHub
def join(*strings) relative_join(strings).absolute! end |
#relative_join(strings, separator = @separator) ⇒ Hanami::Utils::PathPrefix
Joins self with the given token, without prefixing it with separator
. It cleans up all the separator
repetitions.
Source: | on GitHub
def relative_join(strings, separator = @separator) raise TypeError if separator.nil? prefix = @string.gsub(@separator, separator) result = [prefix, strings] result.flatten! result.compact! result.reject! { |string| string == separator } self.class.new( result.join(separator), separator ).relative! end |