feat: Introduce a modular argument convention system for GNU and Windows styles, add .clang-format, and update CMake configuration to C++17.

This commit is contained in:
2026-03-15 22:55:23 +04:00
parent 061581c510
commit a1dc3c0149
20 changed files with 371 additions and 284 deletions

28
src/headers/argparse Normal file
View File

@@ -0,0 +1,28 @@
#pragma once
#ifndef ARGPARSE_HPP
#define ARGPARSE_HPP
#include <argument_parser.hpp>
#ifdef __linux__
#include <linux_parser.hpp>
namespace argument_parser {
using parser = linux_parser;
}
#elif __APPLE__
#include <macos_parser.hpp>
namespace argument_parser {
using parser = macos_parser;
}
#elif _WIN32
#include <windows_parser.hpp>
namespace argument_parser {
using parser = windows_parser;
}
#else
#error "Unsupported platform"
#endif
#endif
#include <base_convention.hpp>
#include <gnu_argument_convention.hpp>
#include <windows_argument_convention.hpp>