Sha256: d69b984a949f48e84c94ccaef354aa5d8d15b3847c8b5d34be4325146e94c1b1
Contents?: true
Size: 549 Bytes
Versions: 2
Compression:
Stored size: 549 Bytes
Contents
class Some include Option attr_reader :value def initialize(value) @value = value end def each yield value end def none?(&block) block.nil? ? false : super end def value_or value end def some?(type=value.class) value.class == type end def & other other.and_option(self) end def == other other.some? && value == other.value end def | other self end def to_s "Some[#{value}]" end def self.[](*values) new(values.size == 1 ? values.first : values) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
optional-0.0.2 | lib/optional/some.rb |
optional-0.0.1 | lib/optional/some.rb |