Хочу у себя так же реализовать, но как они это сделали - колдовство какое-то. Что имею в виду: Model.where(...).select(...).order(...).limit(...).offset(...) Все эти методы знают, когда нужно послать запрос в базу, а когда не нужно, потому что дальше этот запрос дополняться будет. Вот чисто логически - как оно работает? Метапрограммирование какое-нибудь, только на няшке Руби доступное?