class Cowsapi::Cow

Attributes

name[R]

Public Class Methods

all() click to toggle source
# File lib/cowsapi/cow.rb, line 8
def all
  puts "getting all cows"
  lines = `cowsay -l`.split("\n")
  [DefaultCow.new].tap do |cows|
    lines[1..-1].each do |line|
      line.split.each do |c|
        cows << Cow.new(c)
      end
    end
  end
end
get(name) click to toggle source
# File lib/cowsapi/cow.rb, line 20
def get(name)
  all.detect{|cow|
    cow.name == name
  }
end
new(name) click to toggle source
# File lib/cowsapi/cow.rb, line 28
def initialize(name)
  @name = name
end

Public Instance Methods

say(string) click to toggle source
# File lib/cowsapi/cow.rb, line 32
def say(string)
  `cowsay -f #{name} #{Shellwords.escape(string)}`
end