пример делегации проклят? - PullRequest
1 голос
/ 25 февраля 2010

Я пытаюсь запустить пример DelegateClass из http://ruby -doc.org / stdlib / libdoc / делегат / rdoc / files / Delegate_rb.html

Вот код:

require 'delegate'
require 'tmpdir'

class TmpFile < DelegateClass(File)
  def initialize(basename, tmpdir=Dir.tmpdir)
    @tmpfile = File.new("#{tmpdir}/#{basename}.tmp", File::RDWR|File::CREAT|File::EXCL, 0600)
    super(@tmpname)
  end
end

Я получаю в IRB

artem:~/projects/weatherdiff (master)$ irb
irb(main):001:0> require 'test.rb'
=> true
irb(main):002:0> t = TmpFile.new 'ttttt'
=> nil

Похоже, что один из этих тайных программистов wtfs обречен время от времени сталкиваться. Кроме того, я упускаю что-то ослепительно очевидное.

1 Ответ

1 голос
/ 25 февраля 2010

Вы имели в виду super(@tmpfile), а не super(@tmpname)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...