Модуль Ruby с заданными аргументами вызывает метод?

Я не понимаю, что происходит в документах Nokogiri.

Как насколько я могу судить, если

require 'nokogiri'
some_html = "<html><body><h1>Mr. Belvedere Fan Club</h1></body></html>"

, то эти три строки делают то же самое:

html_doc = Nokogiri::HTML::Document.parse(some_html)
html_doc = Nokogiri::HTML.parse(some_html)
html_doc = Nokogiri::HTML(some_html)

Вторая - просто удобный метод для первой. Но для моих не-Ruby глаз третья выглядит так, будто она передает аргумент в модуль , а не метод. Я понимаю, что в Ruby есть конструкторы, но я думал, что они имеют форму Class.new, а не Module (args). Что здесь происходит?

8
задан bsamek 30 July 2011 в 02:47
поделиться