ab5c468ace
canon new lib|exe creates a project following P1204R0 (Canonical Project Structure) with a .canon.toml manifest and a CMakeLists.txt whose managed block is rendered from that manifest. Generators return a plan; the executor checks every operation before writing, so conflicts write nothing and --dry-run writes nothing. Tests: unit tests next to each source file, golden copies of generated projects, and an end-to-end build of both project kinds. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
14 lines
297 B
C++
14 lines
297 B
C++
#include <hello/hello.hpp>
|
|
|
|
#include <cstdio>
|
|
#include <cstdlib>
|
|
#include <print>
|
|
|
|
int main() {
|
|
const auto actual = hello::greeting("World");
|
|
if (actual != "Hello, World!") {
|
|
std::println(stderr, "greeting(\"World\") returned \"{}\"", actual);
|
|
return EXIT_FAILURE;
|
|
}
|
|
}
|