Thread: Ruby Snippets
View Single Post
Old Mar 26th, 2006, 1:58 PM   #3
Master
Programmer
 
Master's Avatar
 
Join Date: Sep 2005
Location: GA
Posts: 99
Rep Power: 4 Master is on a distinguished road
class Time
  def tenth
    time_time = ("%0.1f" % self)
    new_time = time_time.split(//)
    return (new_time[-2] + new_time[-1]).to_i
  end

  def hundth
    time_time = ("%0.2f" % self)
    new_time = time_time.split(//)
    return (new_time[-2] + new_time[-1]).to_i
  end
end

class Array
   def list=(array)
	self.clear
	array.each{|i| self << i}
   end
end  

  

class Object

  def encode(string)
    return if !string.is_a?(String)
    @str = string.unpack('B*')[0].tr('01', " \n")
  end
  def decode(string)
  return if !string.is_a?(String)
    [string.tr(" \n", '01')].pack('B*')
  end
   def deep_clone
     Marshal.load(Marshal.dump(self))
   end
   def get_param(param, type)
  args = nil
  case type
    when 0
      file = IO.readlines(__FILE__)
    else
      file = type
  end
  for i in 0...file.size
    if file[i].include?("def "+param)
      args = file[i].slice(file[i].index("(")+1..file[i].index(")")-1)
      break
    end
  end
  return "" if args.nil?
  return args.split(",")
end
 end
 class Array
   def count(item)
     num = 0
     self.each{|v| num += 1 if v == item}
     return num
   end
 end
class Object
  def If(bool, &block)
    if !bool
      return false
    end
    block.call
  end
  def For(var, bool, type, &block)
    while (bool != var)
      case type
        when "+"
          var += 1
        when "-"
          var -= 1
      end
      yield var
    end
  end
end
class Object
  def self.alias_class_method(new, old)
	new = new.to_s if new.is_a?(Symbol)
	old = old.to_s if old.is_a?(Symbol)
	raise ArgumentError.new('new and old must be a symbol or a string of the method name') unless new.is_a?(String) and old.is_a?(String)
	class_eval <<-EVALEND
	  def self.#{new}(*args)
		self.#{old}(*args)
	  end
	EVALEND
  end
end
#EXample
#=begin
For(m = 0, 5, "+") {|v|
 If(v == 2) {
  print "M = ", v,"\n" 
  break
  }
}

#=end
#EXample
Master is offline   Reply With Quote