Created
March 30, 2017 06:43
-
-
Save bparanj/32bbe1d2df7f107a6263db5ed44fa26e to your computer and use it in GitHub Desktop.
Ruby Object Model Exercise #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(count < 10).if_true { }.if_false{ } |
count = 0
if (count < 10)
print "Count is less than 10"
else
print "Count is greater than or equal to 10"
end
module IfElse
def if_true(&blk)
# if self.class.ancestors.include? TrueClass
yield if self.is_a? TrueClass
self
end
def if_false(&blk)
# if self.class.ancestors.include? FalseClass
yield if self.is_a? FalseClass
self
end
end
class TrueClass
include IfElse
end
class FalseClass
include IfElse
end
count=1
(count < 10).if_true { puts "True" }.if_false{ puts "False" }
count=100
(count < 10).if_true { puts "True" }.if_false{ puts "False" }
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Smalltalk equivalent: