Могу ли я вызвать специальный метод для объекта с этой нотацией?

Перенаправление вывода с помощью plain> будет захватывать только STDOUT. Если вы также хотите поймать STDERR, используйте 2> и 1:

perl -e 'system("dir blablubblelel.txt >out.txt 2>&1");' 

. Для получения дополнительной информации см. Perlmonks

0
задан Mihkel Pajunen 16 January 2019 в 14:25
поделиться

1 ответ

Если вы хотите добавить методы к любому классу (в данном случае String), без необходимости его исправления, вам следует рассмотреть возможность использования уточнений .

module StringRefinements 
  refine String do
    def already_taken?
      puts "yes!"
    end
  end
end

# in another file...
using StringRefinements
"Charlotte".already_taken?

Метод already_taken? будет доступен только в области, которая вызывает using StringRefinements, и больше нигде.

0
ответ дан DannyB 16 January 2019 в 14:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: