wrenbind17

wrenbind17 #

Classes #

Name
class wrenbind17::ReturnValue A return value when calling a Wren function (alias Any)
class wrenbind17::Exception
class wrenbind17::NotFound
class wrenbind17::BadCast
class wrenbind17::RuntimeError
class wrenbind17::CompileError
class wrenbind17::ForeignMethod Holds information about a foreign function of a foreign class.
class wrenbind17::ForeignProp Holds information about a foreign property of a foreign class.
class wrenbind17::ForeignKlass A foreign class.
class wrenbind17::ForeignMethodImpl Type specific implementation of foreign method.
class wrenbind17::ForeignPropImpl
class wrenbind17::ForeignKlassImpl
class wrenbind17::Handle Holds a reference to some Wren type.
class wrenbind17::Map Holds native Wren map.
class wrenbind17::Method
class wrenbind17::ForeignModule
class wrenbind17::StdVectorBindings
class wrenbind17::StdListBindings
class wrenbind17::AbstractMapBindings
class wrenbind17::Variable Holds some Wren variable which can be a class or class instance.
class wrenbind17::VM Holds the entire Wren VM from which all of the magic happens.

Types #

Name
enum ForeignMethodOperator { OPERATOR_GET_INDEX, OPERATOR_SET_INDEX, OPERATOR_SUB, OPERATOR_ADD, OPERATOR_MUL, OPERATOR_DIV, OPERATOR_NEG, OPERATOR_MOD, OPERATOR_EQUAL, OPERATOR_NOT_EQUAL, OPERATOR_GT, OPERATOR_LT, OPERATOR_GT_EQUAL, OPERATOR_LT_EQUAL, OPERATOR_SHIFT_LEFT, OPERATOR_SHIFT_RIGHT, OPERATOR_AND, OPERATOR_XOR, OPERATOR_OR}
using ReturnValue Any An alias of ReturnValue class.
template <typename K ,typename V > using AbstractMapBindings< std::map< K, V > > StdMapBindings
template <typename K ,typename V > using AbstractMapBindings< std::unordered_map< K, V > > StdUnorderedMapBindings
typedef std::function< void(const char *)> PrintFn
typedef std::function< std::string(const std::vector< std::string > &paths, const std::string &name)> LoadFileFn

Functions #

Name
void setNextError(WrenVM * vm, std::string str)
std::shared_ptr< WrenVM > getSharedVm(WrenVM * vm)
void addClassType(WrenVM * vm, const std::string & module, const std::string & name, size_t hash)
void addClassCast(WrenVM * vm, std::shared_ptr< detail::ForeignPtrConvertor > convertor, size_t hash, size_t other)
void getClassType(WrenVM * vm, std::string & module, std::string & name, size_t hash)
detail::ForeignPtrConvertor * getClassCast(WrenVM * vm, size_t hash, size_t other)

Types Documentation #

enum ForeignMethodOperator #

Enumerator Value Description
OPERATOR_GET_INDEX
OPERATOR_SET_INDEX
OPERATOR_SUB
OPERATOR_ADD
OPERATOR_MUL
OPERATOR_DIV
OPERATOR_NEG
OPERATOR_MOD
OPERATOR_EQUAL
OPERATOR_NOT_EQUAL
OPERATOR_GT
OPERATOR_LT
OPERATOR_GT_EQUAL
OPERATOR_LT_EQUAL
OPERATOR_SHIFT_LEFT
OPERATOR_SHIFT_RIGHT
OPERATOR_AND
OPERATOR_XOR
OPERATOR_OR

using Any #

using wrenbind17::Any = typedef ReturnValue;

An alias of ReturnValue class.

See: ReturnValue

using StdMapBindings #

template <typename K ,
typename V >
using wrenbind17::StdMapBindings = typedef AbstractMapBindings<std::map<K, V> >;

using StdUnorderedMapBindings #

template <typename K ,
typename V >
using wrenbind17::StdUnorderedMapBindings = typedef AbstractMapBindings<std::unordered_map<K, V> >;

typedef PrintFn #

typedef std::function<void(const char*)> wrenbind17::PrintFn;

typedef LoadFileFn #

typedef std::function<std::string(const std::vector<std::string>& paths, const std::string& name)> wrenbind17::LoadFileFn;

Functions Documentation #

function setNextError #

void setNextError(
    WrenVM * vm,
    std::string str
)

function getSharedVm #

std::shared_ptr< WrenVM > getSharedVm(
    WrenVM * vm
)

function addClassType #

void addClassType(
    WrenVM * vm,
    const std::string & module,
    const std::string & name,
    size_t hash
)

function addClassCast #

void addClassCast(
    WrenVM * vm,
    std::shared_ptr< detail::ForeignPtrConvertor > convertor,
    size_t hash,
    size_t other
)

function getClassType #

void getClassType(
    WrenVM * vm,
    std::string & module,
    std::string & name,
    size_t hash
)

function getClassCast #

detail::ForeignPtrConvertor * getClassCast(
    WrenVM * vm,
    size_t hash,
    size_t other
)

Updated on 17 October 2023 at 12:26:25 UTC