LibraryLink Utilities  3.0.1
Modern C++ wrapper over LibraryLink and WSTP
LLU::Argument::Typed Namespace Reference

Namespace defining C++ types corresponding to primitive LibraryLink argument types. More...

Detailed Description

Namespace defining C++ types corresponding to primitive LibraryLink argument types.

Mainly used for node types in DataList.

Type aliases

using Boolean = bool
 Boolean type, corresponds to True or False in the Wolfram Language. More...
 
using Integer = mint
 Machine integer type. More...
 
using Real = double
 Double precision floating point type. More...
 
using Complex = std::complex< double >
 Complex number type, bitwise-compatible with mcomplex defined in WolframLibrary.h. More...
 
using Tensor = MContainer< MArgumentType::Tensor >
 Tensor stands for a GenericTensor - type agnostic wrapper over MTensor. More...
 
using SparseArray = MContainer< MArgumentType::SparseArray >
 SparseArray stands for a GenericSparseArray - type agnostic wrapper over MSparseArray. More...
 
using NumericArray = MContainer< MArgumentType::NumericArray >
 NumericArray stands for a GenericNumericArray - type agnostic wrapper over MNumericArray. More...
 
using Image = MContainer< MArgumentType::Image >
 Image stands for a GenericImage - type agnostic wrapper over MImage. More...
 
using UTF8String = std::string_view
 String values from LibraryLink (char*) are wrapped in std::string_view. More...
 
using DataStore = MContainer< MArgumentType::DataStore >
 DataStore stands for a GenericDataList - type agnostic wrapper over DataStore. More...
 
using Any = TypedArgument
 Any is a union of all supported types. Typed::Any can be used as a template parameter for DataList to get a heterogeneous DataList. More...
 

Type aliases documentation

◆ Any

Any is a union of all supported types. Typed::Any can be used as a template parameter for DataList to get a heterogeneous DataList.

◆ Boolean

using LLU::Argument::Typed::Boolean = typedef bool

Boolean type, corresponds to True or False in the Wolfram Language.

◆ Complex

using LLU::Argument::Typed::Complex = typedef std::complex<double>

Complex number type, bitwise-compatible with mcomplex defined in WolframLibrary.h.

◆ DataStore

using LLU::Argument::Typed::DataStore = typedef MContainer<MArgumentType::DataStore>

DataStore stands for a GenericDataList - type agnostic wrapper over DataStore.

◆ Image

using LLU::Argument::Typed::Image = typedef MContainer<MArgumentType::Image>

Image stands for a GenericImage - type agnostic wrapper over MImage.

◆ Integer

using LLU::Argument::Typed::Integer = typedef mint

Machine integer type.

◆ NumericArray

using LLU::Argument::Typed::NumericArray = typedef MContainer<MArgumentType::NumericArray>

NumericArray stands for a GenericNumericArray - type agnostic wrapper over MNumericArray.

◆ Real

using LLU::Argument::Typed::Real = typedef double

Double precision floating point type.

◆ SparseArray

using LLU::Argument::Typed::SparseArray = typedef MContainer<MArgumentType::SparseArray>

SparseArray stands for a GenericSparseArray - type agnostic wrapper over MSparseArray.

◆ Tensor

using LLU::Argument::Typed::Tensor = typedef MContainer<MArgumentType::Tensor>

Tensor stands for a GenericTensor - type agnostic wrapper over MTensor.

◆ UTF8String

using LLU::Argument::Typed::UTF8String = typedef std::string_view

String values from LibraryLink (char*) are wrapped in std::string_view.