qtty-cpp 0.4.5
Header-only C++ wrapper for qtty
Loading...
Searching...
No Matches
ffi_core.hpp File Reference

Core quantity template and error translation utilities. More...

#include <algorithm>
#include <cmath>
#include <iomanip>
#include <iostream>
#include <limits>
#include <optional>
#include <ostream>
#include <sstream>
#include <stdexcept>
#include <string>
#include <string_view>
#include <type_traits>
#include "qtty_ffi.h"
Include dependency graph for ffi_core.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  qtty::QttyException
 Base exception for all qtty wrapper failures. More...
 
class  qtty::InvalidUnitError
 Raised when an unknown or invalid unit identifier is used. More...
 
class  qtty::IncompatibleDimensionsError
 Raised when mixing incompatible dimensions in conversion/arithmetic. More...
 
class  qtty::NullPointerError
 Raised when a required output pointer was null. More...
 
class  qtty::ConversionError
 Raised when value conversion fails at the FFI boundary. More...
 
struct  qtty::is_compound< T >
 
struct  qtty::is_compound< CompoundTag< N, D > >
 
struct  qtty::UnitTraits< UnitTag >
 
struct  qtty::has_dimension< Tag, typename >
 
struct  qtty::has_dimension< Tag, std::void_t< decltype(UnitTraits< Tag >::dimension())> >
 
struct  qtty::ExtractTag< T >
 
struct  qtty::ExtractTag< Quantity< Tag > >
 
class  qtty::Quantity< UnitTag >
 

Namespaces

namespace  qtty
 

Functions

void qtty::check_status (QttyStatus status, const char *operation)
 Convert qtty FFI status codes into typed C++ exceptions.
 
template<typename Tag >
constexpr bool qtty::is_dimensionless_tag ()
 
template<typename UnitTag >
std::ostream & qtty::operator<< (std::ostream &os, const Quantity< UnitTag > &q)
 

Variables

template<typename T >
constexpr bool qtty::is_compound_v = is_compound<T>::value
 
template<typename Tag >
constexpr bool qtty::is_dimensionless_v = is_dimensionless_tag<Tag>()
 

Detailed Description

Core quantity template and error translation utilities.

Definition in file ffi_core.hpp.