Программирование на языке Ruby
Программирование на языке Ruby читать книгу онлайн
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Чтобы включить механизм завершения, добавьте в файл
.irbrcIRB.conf[:AUTO_INDENT] = trueIRB.сonf[:USE_READLINE] = trueIRB.conf[:LOAD_MODULES] ||= []IRB.conf[:LOAD_MODULES] |= ['irb/completion']В файле
.irbrcsmdef sm(obj) list = obj.methods anc = obj.class.ancestors — [obj.class] anc.each {|a| list -= a.instance_methods } list.sortendВот пример его использования:
irb(main):001:0> str = "hello"=> "hello"irb(main):002:0> sm str=> ["%", "*", "+", "<<", "<=>", "[]", "[]=", "capitalize","capitalize!", "casecmp", "center", "chomp", "chomp!", "chop", "chop!","concat", "count", "crypt", "delete", "delete!", "downcase", "downcase!","dump", "each", "each_byte", "each_line", "empty?", "gsub", "gsub!", "hex","index", "insert", "intern", "length", "ljust", "lstrip", "lstrip!", "match","next", "next!", "oct", "replace", "reverse", "reverse!", "rindex", "rjust","rstrip", "rstrip!", "scan", "size", "slice", "slice!", "split", "squeeze","squeeze!", "strip", "strip!", "sub", "sub!", "succ", "succ!", "sum","swapcase", "swapcase!", "to_f", "to_i", "to_str", "to_sym", "tr", "tr!","tr_s", "tr_s!", "unpack", "upcase", "upcase!", "upto"]irb(main):003:0> sm String=> ["allocate", "new", "superclass"]irb(main):004:0> sm 123 => ["%", "*", "**", "+", "-", "/", "<<", ">>", "[]", "^","id2name", "power!", "rdiv", "rpower", "size", "to_f", "to_sym, "|", "-"]Программа
irbМожет быть, вам это и не кажется полезным, но можно, например, задать объект в сочетании с подкомандой
irbself$ irbirb(main):001:0> t0 = Time.now=> Mon Jul 31 04:51:50 CDT 2006irb(main):002:0> irb t0irb#1(Mon Jul 31 04:51:50 CDT 2006):001:0> strftime("%a %b %c")=> "Mon Jul Mon Jul 31 04:51:50 2006"irb#1(Mon Jul 31 04:51:50 CDT 2006):002:0> to_i=> 1154339510irb#1(Mon Jul 31 04:51:50 CDT 2006):003:0> self + 1000=> Mon Jul 31 05:08:30 CDT 2006irb#1(Mon Jul 31 04:51:50 CDT 2006):004:0> wday=> 1irb#1(Mon Jul 31 04:51:50 CDT 2006):005:0> classSyntaxError: compile error(irb#1):5: syntax error, unexpected $end from (irb#1):5irb#1(Mon Jul 31 04:51:50 CDT 2006):006:0> self.class=> Timeirb#1(Mon Jul 31 04:51:50 CDT 2006):007:0> quit=> #<IRB::Irb: @scanner=#<RubyLex:0xb7ee8394>,@signal_status=:IN_EVAL, @context=#<IRB::Context:0xb7ee86f0>>irb(main):003:0> quit$Мы уже убедились в полезности библиотеки
ruby-breakpointirbirb
