Сообщение Re: String templates (JEP 430) от 02.08.2023 15:45
Изменено 02.08.2023 15:47 vsb
Re: String templates (JEP 430)
Здравствуйте, ·, Вы писали:
·>Вот такие макросы. Простые до безобразия, но, имхо, довольно мощные, покрывают довольно много сценариев.
Не хватает опциональных спецификаторов для форматирования.
Если взять тот же пример с SQL, то в JDBC в общем случае требуется указывать тип аргумента.
Т.е. правильный код должен выглядеть примерно так:
Этого, к сожалению, нет.
Также они были бы полезны для обычного форматирования строк: fmt"n=\{n:02x}" вместо format("n=%02x", n).
Но в целом штука удобная и полезная, да.
Не понял, правда, при чём тут макросы.
·>Вот такие макросы. Простые до безобразия, но, имхо, довольно мощные, покрывают довольно много сценариев.
Не хватает опциональных спецификаторов для форматирования.
Если взять тот же пример с SQL, то в JDBC в общем случае требуется указывать тип аргумента.
Т.е. правильный код должен выглядеть примерно так:
PreparedStatement ps = db."insert into person (name) values (\{name:VARCHAR2})";
ps.executeUpdate();
Этого, к сожалению, нет.
Также они были бы полезны для обычного форматирования строк: fmt"n=\{n:02x}" вместо format("n=%02x", n).
Но в целом штука удобная и полезная, да.
Не понял, правда, при чём тут макросы.
Re: String templates (JEP 430)
Здравствуйте, ·, Вы писали:
·>Вот такие макросы. Простые до безобразия, но, имхо, довольно мощные, покрывают довольно много сценариев.
Не хватает опциональных спецификаторов для форматирования.
Если взять тот же пример с SQL, то в JDBC в общем случае требуется указывать тип аргумента.
Т.е. правильный код должен выглядеть примерно так:
Этого, к сожалению, нет. Конечно можно вынести их за фигурную скобку и парсить строку, но это уже не совсем то...
Также они были бы полезны для обычного форматирования строк: fmt"n=\{n:02x}" вместо format("n=%02x", n).
Но в целом штука удобная и полезная, да.
Не понял, правда, при чём тут макросы.
·>Вот такие макросы. Простые до безобразия, но, имхо, довольно мощные, покрывают довольно много сценариев.
Не хватает опциональных спецификаторов для форматирования.
Если взять тот же пример с SQL, то в JDBC в общем случае требуется указывать тип аргумента.
Т.е. правильный код должен выглядеть примерно так:
PreparedStatement ps = db."insert into person (name) values (\{name:VARCHAR2})";
ps.executeUpdate();
Этого, к сожалению, нет. Конечно можно вынести их за фигурную скобку и парсить строку, но это уже не совсем то...
Также они были бы полезны для обычного форматирования строк: fmt"n=\{n:02x}" вместо format("n=%02x", n).
Но в целом штука удобная и полезная, да.
Не понял, правда, при чём тут макросы.