Sha256: 245414705b35c9f6519e5c7f503d62608e7fcb76107602e9da1dd1716ba320b7

Contents?: true

Size: 688 Bytes

Versions: 1

Compression:

Stored size: 688 Bytes

Contents

# frozen_string_literal: true

module Muina
  class Maybe
    class None < self
      private_class_method(:new)
      def some?
        false
      end

      def none?
        true
      end

      def value!
        raise
      end

      def value_or(default)
        default
      end

      def value_or_yield
        yield
      end

      def value_or_nil
        nil
      end

      def and_then
        self
      end

      def or_else
        yield
        self
      end

      def map
        self
      end
      
      def map_none
        Maybe.return yield
      end

      def bind
        self
      end

      def bind_none
        yield
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
muina-0.3.0 lib/muina/maybe/none.rb