первое через @. переписать можно
Можно, конечно. Вопрос не в этом, а во множественном выборе return-ов
а что делать если ни одно условие не соблюдено?
@assert style in [:all, :basename, :noext] "Wrong style :$style. Use :all|:basename|:noext"
Если это не в месте, где нужна высокая скорость, то вообще не имеет значения, как писать, единственное требование - это чтобы будущему читателю было понятно. Беспокоиться о возвращаемых типах и прочих вещах не стоит.
Обсуждают сегодня