|
60 | 60 | "author": "saminjay"
|
61 | 61 | }
|
62 | 62 | ]
|
| 63 | + }, |
| 64 | + { |
| 65 | + "categoryName": "Array Manipulation", |
| 66 | + "snippets": [ |
| 67 | + { |
| 68 | + "title": "Transform Vector", |
| 69 | + "description": "Transforms a vector using a function", |
| 70 | + "code": [ |
| 71 | + "#include <ranges>", |
| 72 | + "#include <vector>", |
| 73 | + "", |
| 74 | + "template <typename T, typename F>", |
| 75 | + "auto transform(const std::vector<T>& vec, F&& transformer) {", |
| 76 | + " using U = std::invoke_result_t<F, T>;", |
| 77 | + " return vec", |
| 78 | + " | std::views::transform(std::forward<F>(transformer))", |
| 79 | + " | std::ranges::to<std::vector<U>>();", |
| 80 | + "}" |
| 81 | + ], |
| 82 | + "tags": ["cpp", "array", "transform", "utility"], |
| 83 | + "author": "majvax" |
| 84 | + }, |
| 85 | + { |
| 86 | + "title": "Filter Vector", |
| 87 | + "description": "Filters a vector using a predicate function", |
| 88 | + "code": [ |
| 89 | + "#include <ranges>", |
| 90 | + "#include <vector>", |
| 91 | + "", |
| 92 | + "template <typename T, typename P>", |
| 93 | + "auto filter(const std::vector<T>& vec, P&& predicate) {", |
| 94 | + " return vec", |
| 95 | + " | std::views::filter(std::forward<P>(predicate))", |
| 96 | + " | std::ranges::to<std::vector<T>>();", |
| 97 | + "}" |
| 98 | + ], |
| 99 | + "tags": ["cpp", "array", "filter", "utility"], |
| 100 | + "author": "majvax" |
| 101 | + } |
| 102 | + ] |
63 | 103 | }
|
64 | 104 | ]
|
0 commit comments