Rice - Ruby Interface for C++ΒΆ Introduction Version Differences 3.x vs 4.x and later Project Details Installation Why Rice? Common Problems Rice Solutions Tutorial Getting started Defining Classes Defining methods Defining methods with lambdas Defining functions Wrapping C++ Types Defining attributes Type conversions Conversions for wrapped C++ types Exceptions Bindings Constructors Functions and Methods Overloaded Methods Attributes Enums Constants Iterators Buffers Class Templates C++ Operators Exceptions Types Overview Type Conversions Type Verification Memory Management Inheritance Callbacks Instance Registry STL Overview std::complex std::exception std::exception_ptr std::map std::multimap std::optional std::pair std::reference_wrapper std::set Smart Pointers std::string std::string_view std::tuple std::type_index std::type_info std::unordered_map std::variant std::vector C++ API Ruby C++ API Packaging Overview extconf.rb CMake Migration Version 4.5 to 4.6 Version 4.* to 4.5 Version 3 to 4 #include <rice/rice.hpp> to_ruby / from_ruby Functions vs Methods Default Arguments Memory Management History Architecture Enumerators