Size: a a a

Ruby, Rails, Hanami | dry-rb

2020 October 29

VK

Vasyl Kuzmyk in Ruby, Rails, Hanami | dry-rb
Чтобы сработал yield тебе надо писать

pc = SomeClass.new do |sc|
 sc.param :p1
end
источник

MG

Michael Gurov in Ruby, Rails, Hanami | dry-rb
В примере не используются параметры блока |sc|. Пойду читать про instance_eval
источник

UI

Uncle Iroh in Ruby, Rails, Hanami | dry-rb
в руби есть мощнейшие методы метапрограммирования, что позволяет делать фантастически удобные вещи если ты хорошо понимаешь что делаешь, и выстрелить себе в ногу с особым изощрением если не очень 🙂
источник

VK

Vasyl Kuzmyk in Ruby, Rails, Hanami | dry-rb
Или когда прям уверен, что понимаешь
источник

VK

Vasyl Kuzmyk in Ruby, Rails, Hanami | dry-rb
Но если честно мне кажется глупым с него начнать
источник

VK

Vasyl Kuzmyk in Ruby, Rails, Hanami | dry-rb
Слишком высокий порог вхождения, а юзается редко
источник

UI

Uncle Iroh in Ruby, Rails, Hanami | dry-rb
скажем так, начинать с этого абсолютно противопоказано если ты не замастерил подобное в других языках, это точно
источник

CM

Cucumba Morozov in Ruby, Rails, Hanami | dry-rb
Vasyl Kuzmyk
Но если честно мне кажется глупым с него начнать
это збс способ, когда ты уже на нормальном уровне знаешь другие языки
источник

VK

Vasyl Kuzmyk in Ruby, Rails, Hanami | dry-rb
А так есть хорошая книга metaprogramming ruby
источник

UI

Uncle Iroh in Ruby, Rails, Hanami | dry-rb
оно даже не то чтобы редко, оно просто обычно настолько специфично
источник

CM

Cucumba Morozov in Ruby, Rails, Hanami | dry-rb
я вкатился в руби с книги metaprograming ruby, большего и не нужно
источник

UI

Uncle Iroh in Ruby, Rails, Hanami | dry-rb
что или тебе оно нужно всё время, или не нужно примерно вообще
источник

CM

Cucumba Morozov in Ruby, Rails, Hanami | dry-rb
метапрограммирование хорошо показывает, как язык работает
источник

UI

Uncle Iroh in Ruby, Rails, Hanami | dry-rb
ну, это ж был не первый твой язык, так
источник

CM

Cucumba Morozov in Ruby, Rails, Hanami | dry-rb
ага, уже хз какой
источник

CM

Cucumba Morozov in Ruby, Rails, Hanami | dry-rb
но я не могу сказать, что я в питоне проделывал такое же до рубей.

после рубей — да
источник

CM

Cucumba Morozov in Ruby, Rails, Hanami | dry-rb
и в пыхе тоже, соответственно
источник

MG

Michael Gurov in Ruby, Rails, Hanami | dry-rb
Vasyl Kuzmyk
Тебе тут нужен instance_eval
Спасибо, сработало!

class SomeClass
 def initialize (&block)
   instance_eval(&block) if block_given?
 end
 def param(sel)
   @sel = sel
 end
 def run (str)
   puts @sel
   puts str
 end
end

pc = SomeClass.new do
 param :p1
end

pc.run('hello')
источник

АД

Антон Дьячук... in Ruby, Rails, Hanami | dry-rb
Uncle Iroh
скажем так, начинать с этого абсолютно противопоказано если ты не замастерил подобное в других языках, это точно
я так с братом начинал
он у меня dsl писал и тесты
пол года мы страдали
я за пол года сделал мидла
источник

АД

Антон Дьячук... in Ruby, Rails, Hanami | dry-rb
ну ладно, мидл-/уверенный_джун
практики за пол года много не получить
источник