开源项目 neither 使用教程

开源项目 neither 使用教程

neitherEither and Maybe monads for better error-handling in C++ ↔️项目地址:https://gitcode.com/gh_mirrors/ne/neither

1. 项目的目录结构及介绍

neither 项目的目录结构如下:

neither/
├── CMakeLists.txt
├── README.md
├── include/
│   └── neither/
│       ├── Either.hpp
│       ├── Maybe.hpp
│       ├── Monad.hpp
│       ├── MonadError.hpp
│       ├── Reader.hpp
│       ├── Result.hpp
│       ├── Writer.hpp
│       └── detail/
│           ├── MonadImpl.hpp
│           └── MonadErrorImpl.hpp
├── src/
│   ├── Either.cpp
│   ├── Maybe.cpp
│   ├── Monad.cpp
│   ├── MonadError.cpp
│   ├── Reader.cpp
│   ├── Result.cpp
│   └── Writer.cpp
└── test/
    ├── EitherTests.cpp
    ├── MaybeTests.cpp
    ├── MonadTests.cpp
    ├── MonadErrorTests.cpp
    ├── ReaderTests.cpp
    ├── ResultTests.cpp
    └── WriterTests.cpp

目录结构介绍

  • CMakeLists.txt: 项目的 CMake 构建文件。
  • README.md: 项目的说明文档。
  • include/: 包含项目的头文件。
    • neither/: 主要的头文件目录。
      • Either.hpp, Maybe.hpp, Monad.hpp, MonadError.hpp, Reader.hpp, Result.hpp, Writer.hpp: 主要的头文件。
      • detail/: 包含一些实现细节的头文件。
  • src/: 包含项目的源文件。
    • Either.cpp, Maybe.cpp, Monad.cpp, MonadError.cpp, Reader.cpp, Result.cpp, Writer.cpp: 主要的源文件。
  • test/: 包含项目的测试文件。
    • EitherTests.cpp, MaybeTests.cpp, MonadTests.cpp, MonadErrorTests.cpp, ReaderTests.cpp, ResultTests.cpp, WriterTests.cpp: 主要的测试文件。

2. 项目的启动文件介绍

neither 项目的启动文件是 CMakeLists.txt。这个文件定义了项目的构建过程,包括源文件的编译、链接以及测试的运行。

CMakeLists.txt 主要内容

cmake_minimum_required(VERSION 3.1)
project(neither)

set(CMAKE_CXX_STANDARD 14)

include_directories(include)

file(GLOB_RECURSE SOURCES "src/*.cpp")
file(GLOB_RECURSE HEADERS "include/*.hpp")

add_library(neither ${SOURCES} ${HEADERS})

add_executable(tests test/main.cpp ${SOURCES})
target_link_libraries(tests neither)

enable_testing()
add_test(NAME tests COMMAND tests)

启动文件介绍

  • cmake_minimum_required(VERSION 3.1): 指定 CMake 的最低版本要求。
  • project(neither): 定义项目名称。
  • set(CMAKE_CXX_STANDARD 14): 设置 C++ 标准为 C++14。
  • include_directories(include): 包含头文件目录。
  • file(GLOB_RECURSE SOURCES "src/*.cpp"): 获取所有源文件。
  • file(GLOB_RECURSE HEADERS "include/*.hpp"): 获取所有头文件。
  • add_library(neither ${SOURCES} ${HEADERS}): 添加库目标。
  • add_executable(tests test/main.cpp ${SOURCES}): 添加测试可执行文件。
  • target_link_libraries(tests neither): 链接库目标。
  • enable_testing(): 启用测试。
  • add_test(NAME tests COMMAND tests): 添加测试命令。

3. 项目的配置文件介绍

neither 项目没有显式的配置文件,所有的配置都是通过 CMake 文件 CMakeLists.txt 来完成的。这个文件定义了项目的构建过程,包括源文件的编译、链接以及测试的运行。

CMakeLists.txt 配置介绍

  • cmake_minimum_required(VERSION 3.1): 指定 CMake 的最低版本要求。
  • `project(neither

neitherEither and Maybe monads for better error-handling in C++ ↔️项目地址:https://gitcode.com/gh_mirrors/ne/neither

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尚舰舸Elsie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值