Sha256: bf8d36b14411dc3f3daa20f75513bb2fc3c261f338350563e2e167686b6bc158

Contents?: true

Size: 721 Bytes

Versions: 14

Compression:

Stored size: 721 Bytes

Contents

module Wisper
  module ValueObjects #:nodoc:
    # Prefix for notifications
    #
    # @example
    #   Wisper::ValueObjects::Prefix.new nil    # => ""
    #   Wisper::ValueObjects::Prefix.new "when" # => "when_"
    #   Wisper::ValueObjects::Prefix.new true   # => "on_"
    class Prefix < String
      class << self
        attr_accessor :default
      end

      # @param [true, nil, #to_s] value
      #
      # @return [undefined]
      def initialize(value = nil)
        super "#{ (value == true) ? default : value }_"
        replace "" if self == "_"
      end

      private

      def default
        self.class.default || 'on'
      end
    end # class Prefix
  end # module ValueObjects
end # module Wisper

Version data entries

14 entries across 14 versions & 5 rubygems

Version Path
wisper-3.0.0.rc1 lib/wisper/value_objects/prefix.rb
wisper-compat-4.0.0 lib/wisper/value_objects/prefix.rb
lotrd-0.1.9 vendor/cache/ruby/2.6.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
lotrd-0.1.8 vendor/cache/ruby/2.6.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
lotrd-0.1.6 vendor/cache/ruby/2.6.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
lotrd-0.1.5 vendor/cache/ruby/2.6.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
pokedex-terminal-0.2.8 vendor/bundle/ruby/2.7.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
pokedex-terminal-0.2.7 vendor/bundle/ruby/2.7.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
pokedex-terminal-0.2.6 vendor/bundle/ruby/2.7.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
pokedex-terminal-0.2.5 vendor/bundle/ruby/2.7.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
pokedex-terminal-0.2.4 vendor/bundle/ruby/2.7.0/gems/wisper-2.0.1/lib/wisper/value_objects/prefix.rb
wisper-2.0.1 lib/wisper/value_objects/prefix.rb
siftery-wisper-2.0.1 lib/wisper/value_objects/prefix.rb
wisper-2.0.0 lib/wisper/value_objects/prefix.rb