А не лучший вариант сделать этот комментарий внутри функции isFinite (или как часть документации)? Не плодить же такой комментарий для каждого использования isFinite.
На мой взгляд, yaml хуже поддается минимизации, из-за этого я и отбросил его. Но, на самом деле, это не особо принципиально, если есть желание уйти от html
У меня на практике возникла потребность чтобы unordered_set и unordered_map работали и с char* и string_view и string.
я решил эту проблему аналогично как в статье и поделился на вопросе на stackoverflow.
Если вкратце то нужно создать два функтора hash и equal
struct string_equal {
using is_transparent = std::true_type ;
bool operator()(std::string_view l, std::string_view r) const noexcept
{
return l == r;
}
};
struct string_hash {
using is_transparent = std::true_type ;
auto operator()(std::string_view str) const noexcept {
return std::hash<std::string_view>()(str);
}
};
Мне кажется, что одно из интересных применение генераторов — проход дерева
function* dfs (root) {
yield root;
for (const child of root.children)
yield* dfs(child);
}
И теперь если внутри какой нибудь логики нам нужно получить все ноды, постепенно уходя в глубину, то можно легко обойтись обычным циклом по генератору:
for (let node of dfs(obj)) {
console.log(node)
}
Так же генераторы используют для контроля состояния (тот же redux-saga)
Посмотрите platformio. Она позволяет генерировать все необходимые настройки для разных ide и редакторов (например clion, vscode начинают просто работать без каких либо расширений), и полезной фичей будет взрослая работа с пакетами ( как pip или npm)
А не лучший вариант сделать этот комментарий внутри функции
isFinite(или как часть документации)? Не плодить же такой комментарий для каждого использованияisFinite.Очень интересный формат, не знал о таком. json я привел в статье для демонстрации того, что использование конкретно html не всегда оправдано и удобно.
О, интересно, не знал о таком.
Хм, а структура формата у него похожа на то, что я попытался представить в статье
Полностью согласен, об этом я и попытался рассказать в статье.
На мой взгляд, yaml хуже поддается минимизации, из-за этого я и отбросил его. Но, на самом деле, это не особо принципиально, если есть желание уйти от html
Выглядит круто, я сам пару месяцев назад загорелся похожей идеей мобильного приложения на Flutter, но вы опередили.
Если интересно то вот: https://github.com/avdosev/habr_app
Правда, особых фишек в нем и нет, кроме кеширования статей
Здорово, я как то не додумался до такого простого варианта
У меня на практике возникла потребность чтобы
unordered_setиunordered_mapработали и сchar*иstring_viewиstring.я решил эту проблему аналогично как в статье и поделился на вопросе на stackoverflow.
Если вкратце то нужно создать два функтора hash и equal
Для
unordered_setкод будет выглядеть так:С мапой будет аналогично, только тип ключа ещё будет.
Мне кажется, что одно из интересных применение генераторов — проход дерева
И теперь если внутри какой нибудь логики нам нужно получить все ноды, постепенно уходя в глубину, то можно легко обойтись обычным циклом по генератору:
Так же генераторы используют для контроля состояния (тот же redux-saga)
Поправьте если я заблуждаюсь, но в 14 версии ноды есть поддержка es модулей (без загрузки по url)
я сам тоже веду группу детей. У них тоже быстро начали различаться уровни, хотя группа состоит из детей с большой разницей в возрасте от 10 до 14 лет.
Посмотрите platformio. Она позволяет генерировать все необходимые настройки для разных ide и редакторов (например clion, vscode начинают просто работать без каких либо расширений), и полезной фичей будет взрослая работа с пакетами ( как pip или npm)