Initial Course

This commit is contained in:
David Gil de Gómez Pérez
2026-08-11 17:40:36 +03:00
commit 9aed1d1d86
202 changed files with 3420 additions and 0 deletions
+16
View File
@@ -0,0 +1,16 @@
#pragma once
#include <utility>
#include <vector>
namespace cpp14 {
[[nodiscard]] inline auto copy_or_reference(const std::vector<int>& input) -> decltype(auto) {
(void)input;
static std::vector<int> empty;
return empty;
}
[[nodiscard]] inline auto identity(int value) -> decltype(auto) { return value; }
} // namespace cpp14
@@ -0,0 +1,11 @@
#pragma once
#include <cstdint>
namespace cpp14 {
[[nodiscard]] auto million() -> int;
[[nodiscard]] auto mask() -> std::uint32_t;
[[nodiscard]] auto bits_set() -> int;
} // namespace cpp14
@@ -0,0 +1,12 @@
#pragma once
#include <string>
#include <vector>
namespace cpp14 {
[[nodiscard]] auto apply_twice(const std::vector<int>& values) -> std::vector<int>;
[[nodiscard]] auto concat_any(const std::vector<std::string>& a, const std::vector<std::string>& b)
-> std::vector<std::string>;
} // namespace cpp14
+18
View File
@@ -0,0 +1,18 @@
#pragma once
#include <memory>
#include <string>
#include <vector>
namespace cpp14 {
struct Task {
std::string name;
int priority;
};
[[nodiscard]] auto make_task(std::string name, int priority) -> std::unique_ptr<Task>;
[[nodiscard]] auto clone_task(const Task& task) -> std::unique_ptr<Task>;
[[nodiscard]] auto total_priority(const std::vector<std::unique_ptr<Task>>& tasks) -> int;
} // namespace cpp14