Sha256: acde94a26b1e0597f0612f1f9e69fb7c4d2b26cbd69a643ba0db2b87e77ab9b5
Contents?: true
Size: 817 Bytes
Versions: 1
Compression:
Stored size: 817 Bytes
Contents
module Kernel def let(name, &block) define_method(name, &block) end def let_self(name, &block) define_singleton_method(name, &block) end def when_present(item, &block) if block_given? item.nil? ? '' : block.call(item) else item end end def consists_of PoorsManStringBuilder.new.tap { |builder| yield(builder) }.result end class PoorsManStringBuilder attr_reader :result def initialize @result = '' end def add(item) @result << item.to_s end alias :always :add def when_present(item, &block) @result << Kernel.when_present(item, &block).to_s end def when(item, &block) return unless item @result << Kernel.when_present(item, &block).to_s end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
guerrilla_patch-2.2.0 | lib/guerrilla_patch/kernel.rb |