From e389c0244cae727348c723e2b455049bfa7e1cda Mon Sep 17 00:00:00 2001 From: Marcin Wyszynski Date: Tue, 18 Aug 2015 15:46:15 +0200 Subject: [PATCH] Get rid of unnecessary methods brought by Struct superclass --- lib/monads/optional.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/monads/optional.rb b/lib/monads/optional.rb index 9ce77b3..137d687 100644 --- a/lib/monads/optional.rb +++ b/lib/monads/optional.rb @@ -1,8 +1,13 @@ require 'monads/monad' module Monads - Optional = Struct.new(:value) do + class Optional include Monad + attr_accessor :value + + def initialize(value) + @value = value + end def and_then(&block) block = ensure_monadic_result(&block)