add readme & default disable test

This commit is contained in:
2025-10-18 22:09:37 +08:00
parent 383a419d2d
commit f5e0474c1f
3 changed files with 28 additions and 3 deletions

View File

@@ -5,7 +5,7 @@ project(mrubypp LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_STANDARD_REQUIRED ON)
option(MRUBYPP_BUILD_TEST "Build Catch2 Test" ON) option(MRUBYPP_BUILD_TEST "Build Catch2 Test" OFF)
if (MSVC) if (MSVC)
add_compile_options("$<$<C_COMPILER_ID:MSVC>:/utf-8>") add_compile_options("$<$<C_COMPILER_ID:MSVC>:/utf-8>")

25
README.md Normal file
View File

@@ -0,0 +1,25 @@
# mrubypp
mruby c++ header only library
## Installation
- install mruby
- add to cmake project, link `mrubypp` or copy *.h to you projects
- `cmake -DMRUBYPP_BUILD_TEST=ON .` build tests
## Usage
```
#include "mrubypp.h"
mrubypp engine;
engine.load(R"(
def sort_and_get_first(a)
a.sort!
a[0]
end
)");
std::vector<int> a{3, 1, 2};
auto b = engine.call<int>("sort_and_get_first", a);
assert(b == 1);
```

View File

@@ -24,14 +24,14 @@ TEST_CASE("none args call", "[engine]") {
TEST_CASE("args call", "[engine]") { TEST_CASE("args call", "[engine]") {
mrubypp engine; mrubypp engine;
engine.load(R"( engine.load(R"(
def add(a) def sort_and_get_first(a)
a.sort! a.sort!
a[0] a[0]
end end
)"); )");
std::vector<int> a{3, 1, 2}; std::vector<int> a{3, 1, 2};
auto b = engine.call<int>("add", a); auto b = engine.call<int>("sort_and_get_first", a);
REQUIRE(b == 1); REQUIRE(b == 1);
} }