Sha256: 28e628374bf923a98b923ec8ba368de175923cc45eb763c2fbba5c87f7e107b9

Contents?: true

Size: 537 Bytes

Versions: 1

Compression:

Stored size: 537 Bytes

Contents

module StreetFighter
  class EitherValue
    attr_reader :value

    def initialize value
      @value = value
    end

    def match # (>>) in Haskell
      raise NotImplementedError, "Follows not implemented here."
    end

    def bind # (>>=) in Haskell
      raise NotImplementedError, "Bind not implemented here."
    end

    def failable # `fmap` in Haskell, but restricted to EitherValues
      raise NotImplementedError, "Bind not implemented here."
    end

    def ==(other)
      self.value == other.value
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
street_fighter-0.0.1 lib/street_fighter/either_value.rb