Простой код Ruby не работает - PullRequest
2 голосов
/ 29 января 2012

Может кто-нибудь сказать мне, почему в мире это не работает?Код ниже представляет собой все содержимое файла prog.rb

class String
    def to_b
        return true if self == "true"
        false
    end
end

Вот ошибка:

path/prog.rb:1: syntax error, unexpected keyword_def, expecting
<' or ';' or '\n'
             return true if self =...
                ^

В файле нет плохих символови я использую Ruby 1.9.3.Код протестирован в IRB и признан работающим.

Это ошибка?

Спасибо

Ответы [ 2 ]

5 голосов
/ 29 января 2012

Я предполагаю, что есть проблема с тем, как ваш редактор сохраняет возврат каретки. Он говорит, что ожидал < или ; или \n - что означает, что он не обнаружил \n (возврат каретки), который должен был присутствовать в конце строки class String.

Проверьте настройки возврата каретки в вашем редакторе и повторно сохраните файл.

1 голос
/ 29 января 2012

Это, вероятно, правильный способ сделать это:

class String
    def to_b
        return (self == "true")
    end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...