Module: PubliSci::Interactive
- Included in:
- Dataset, Readers::Base
- Defined in:
- lib/bio-publisci/dataset/interactive.rb
Instance Method Summary collapse
-
#interact(message, default, options = nil) ⇒ Object
take message, options, defaults.
Instance Method Details
#interact(message, default, options = nil) ⇒ Object
take message, options, defaults. can be passed block to handle default as well
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/bio-publisci/dataset/interactive.rb', line 6 def interact(, default, =nil) puts + " (#{default})\n[#{}]" str = gets.chomp if str.size > 0 if if str.split(',').all?{|s| Integer(s) rescue nil} str.split(',').map(&:to_i).map{|i| [i]} else str.split(',').each{|s| raise "unkown selection #{s}" unless .include? s.strip} str.split(',').map(&:strip) end else str end elsif block_given? yield str else default end end |