В Elixir вы можете объединять строки с помощью оператора <>
, как в "Hello" <> " " <> "World"
.
Вы также можете использовать оператор |>
для объединения функций.
Я пытаюсь написать код Elixir для форматирования валюты для онлайн-игры.
def format_price(price) do
price/10000
|> Float.round(2)
|> to_string
|> <> "g"
end
Вышеуказанное приводит к синтаксической ошибке. Я пропускаю основную функцию, которая может объединять строки? Я знаю, что могу определить один сам, но это похоже на создание ненужного беспорядка в моем коде, если я могу избежать этого.
Я понимаю, что могу сделать то же самое, просто to_string(Float.round(price/10000, 2)) <> "g"
вместе методы, такие как to_string(Float.round(price/10000, 2)) <> "g"
, но этот синтаксис не так хорош для чтения, и он делает его Сложнее расширить метод в будущем, если я захочу добавить промежуточные этапы.
Есть ли в Elixir способы объединения текста с использованием оператора pipe или это невозможно без определения метода самостоятельно?