Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shamrock::patch::FieldVariant< Container > Class Template Reference

Field variant class. More...

#include <shamrock/include/shamrock/patch/FieldVariant.hpp>

Public Types

using var_t_template

Public Member Functions

template<class T>
 FieldVariant (Container< T > &&val)
template<class T>
Container< T > & get_if_ref_throw ()
template<class Func>
void visit (Func &&f)
template<class Func>
auto visit_return (Func &&f)
template<class Func>
void visit (Func &&f) const
template<class Func>
auto visit_return (Func &&f) const
template<template< class > class Container2, class Func>
FieldVariant< Container2 > convert (Func &&f)

Public Attributes

var_t_template value

Detailed Description

template<template< class > class Container>
class shamrock::patch::FieldVariant< Container >

Field variant class.

Todo
provide example
Template Parameters
Container

Definition at line 31 of file FieldVariant.hpp.

Member Typedef Documentation

◆ var_t_template

template<template< class > class Container>
using shamrock::patch::FieldVariant< Container >::var_t_template
Initial value:
std::variant<
Container<f32>,
Container<f32_2>,
Container<f32_3>,
Container<f32_4>,
Container<f32_8>,
Container<f32_16>,
Container<f64>,
Container<f64_2>,
Container<f64_3>,
Container<f64_4>,
Container<f64_8>,
Container<f64_16>,
Container<u32>,
Container<u64>,
Container<u32_3>,
Container<u64_3>,
Container<i64_3>,
Container<i64>>

Definition at line 34 of file FieldVariant.hpp.

Constructor & Destructor Documentation

◆ FieldVariant()

template<template< class > class Container>
template<class T>
shamrock::patch::FieldVariant< Container >::FieldVariant ( Container< T > && val)
inlineexplicit

Definition at line 57 of file FieldVariant.hpp.

Member Function Documentation

◆ convert()

template<template< class > class Container>
template<template< class > class Container2, class Func>
FieldVariant< Container2 > shamrock::patch::FieldVariant< Container >::convert ( Func && f)
inline

Definition at line 105 of file FieldVariant.hpp.

◆ get_if_ref_throw()

template<template< class > class Container>
template<class T>
Container< T > & shamrock::patch::FieldVariant< Container >::get_if_ref_throw ( )
inline

Definition at line 60 of file FieldVariant.hpp.

◆ visit() [1/2]

template<template< class > class Container>
template<class Func>
void shamrock::patch::FieldVariant< Container >::visit ( Func && f)
inline

Definition at line 69 of file FieldVariant.hpp.

◆ visit() [2/2]

template<template< class > class Container>
template<class Func>
void shamrock::patch::FieldVariant< Container >::visit ( Func && f) const
inline

Definition at line 87 of file FieldVariant.hpp.

◆ visit_return() [1/2]

template<template< class > class Container>
template<class Func>
auto shamrock::patch::FieldVariant< Container >::visit_return ( Func && f)
inline

Definition at line 78 of file FieldVariant.hpp.

◆ visit_return() [2/2]

template<template< class > class Container>
template<class Func>
auto shamrock::patch::FieldVariant< Container >::visit_return ( Func && f) const
inline

Definition at line 96 of file FieldVariant.hpp.

Member Data Documentation

◆ value

template<template< class > class Container>
var_t_template shamrock::patch::FieldVariant< Container >::value

The held variant

Definition at line 54 of file FieldVariant.hpp.


The documentation for this class was generated from the following file: