Я видел этот синтаксис в ruby для ряда элементов, и я хотел узнать больше о том, когда он используется.
Это просто определение метода, как и любое другое определение метода. Подчеркивание является юридической частью идентификатора. Это не имеет никакого особого значения.
Когда и где используются две нижние черты __
до и после имени? Какое правило для этого? Я видел, как оно используется для имен методов и тому подобного.
Как и любое другое имя, разработчик использует такое имя, когда считает, что это правильное имя для этой вещи. Нет абсолютно никакой разницы между именами ✅
или foo
или add
или __some_wrapper__
. Вы выбираете имя, которое наилучшим образом передает цель метода.