Например, here - это список определенных рубиновых литералов. Рубин дает нам способ определить новую «обычную»?Есть ли способ определить новый литерал в Ruby?
[Обновлено] Целью является упрощение процесса создания объекта. Например, если я хочу, чтобы создать объект на основе некоторого динамического языка я хотел бы иметь что-то вроде этого:
obj = @|
rule1 = "..."
rule2 = "..."
value1 = "..."
value2 = "..."
|
вместо того
hash = {rule1: "...", rule2: "...", value1: "...", value2: "..."}
obj = MyObj.new(hash)
Зачем вам когда-либо понадобится d o это? Просьба представить практический пример проблемы, с которой вы сталкиваетесь. –
Добавление новых лексических конструкций на самом деле не вопрос необходимости, а удобства. Несмотря на то, что это может быть обескуражено, люди по-прежнему в конечном итоге исправляют основные классы. Пользовательские литералы, испеченные на этом языке, помогли бы стандартизировать эту практику и сделать ее более понятной. –