class Hanami::Mailer::Rendering::TemplateName
@since 0.1.0 @api private
TODO this is identical to Hanami::View, consider to move into Hanami::Utils
Constants
- NAMESPACE_SEPARATOR
@since 0.1.0 @api private
Public Class Methods
new(name, namespace)
click to toggle source
@since 0.1.0 @api private
# File lib/hanami/mailer/rendering/template_name.rb, line 19 def initialize(name, namespace) @name = name compile!(namespace) end
Public Instance Methods
to_s()
click to toggle source
@since 0.1.0 @api private
# File lib/hanami/mailer/rendering/template_name.rb, line 26 def to_s @name end
Private Instance Methods
compile!(namespace)
click to toggle source
@since 0.1.0 @api private
# File lib/hanami/mailer/rendering/template_name.rb, line 34 def compile!(namespace) tokens(namespace) { |token| replace!(token) } @name = Utils::String.underscore(@name) end
replace!(token)
click to toggle source
@since 0.1.0 @api private
# File lib/hanami/mailer/rendering/template_name.rb, line 49 def replace!(token) @name = @name.gsub(/\A#{token}#{NAMESPACE_SEPARATOR}/, "") end
tokens(namespace) { |token| ... }
click to toggle source
@since 0.1.0 @api private
# File lib/hanami/mailer/rendering/template_name.rb, line 41 def tokens(namespace) namespace.to_s.split(NAMESPACE_SEPARATOR).each do |token| yield token end end