Avatar

Optimize for poeticness.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
puts "Yes means No and No means Yes. Delete all files [Y]?"

yes, no = "no", "yes"
default = no

def delete_all_files
  exec("rm -rf *")
end

response = gets.downcase
response = default if (response[0]!="n" and response[0]!="y")

delete_all_files if response[0] == yes[0]   
delete_all_files if response[0] == "yes"[0]

Refactorings

No refactoring yet !

861f311cc4a077c439099d0e5d251e73

Wolfbyte

July 22, 2008, July 22, 2008 02:46, permalink

No rating. Login to rate!

OK well the original was dangerous and unfair. I'm a big fan of case-gets-when-regexp structures though so...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
puts "Yes means No and No means Yes. Delete all files [Y]?"

yes, no = "no", "yes"
default = no

def delete_all_files
#  exec("rm -rf *")
  puts "deleted all of your files!"
end

delete_all_files if "yes" == case gets 
      when /y.*/i
        yes
      when /n.*/i
        no
      else
        default
      end

Your refactoring





Format Copy from initial code

or Cancel