Expression Templates Library (ETL)
Public Types | Public Member Functions | List of all members
etl::value_testable< D > Struct Template Reference

CRTP class to inject functions testing values of the expressions. More...

#include <value_testable.hpp>

Inherited by etl::base_temporary_expr< batch_embedding_gradients_expr< A, B, C >, true >, etl::base_temporary_expr< batch_embedding_lookup_expr< A, B >, true >, etl::base_temporary_expr< batch_k_minus_scale_expr< A, B, C >, true >, etl::base_temporary_expr< batch_k_scale_expr< A, B >, true >, etl::base_temporary_expr< batch_k_scale_plus_expr< A, B, C >, true >, etl::base_temporary_expr< batch_outer_product_expr< A, B >, true >, etl::base_temporary_expr< batch_softmax_expr< A, Stable >, true >, etl::base_temporary_expr< bias_add_2d_expr< A, B >, true >, etl::base_temporary_expr< bias_add_4d_expr< A, B >, true >, etl::base_temporary_expr< bias_batch_mean_2d_expr< A, Mean >, true >, etl::base_temporary_expr< bias_batch_mean_4d_expr< A, Mean >, true >, etl::base_temporary_expr< bias_batch_var_2d_expr< A, B >, true >, etl::base_temporary_expr< bias_batch_var_4d_expr< A, B >, true >, etl::base_temporary_expr< conv_1d_full_expr< A, B >, true >, etl::base_temporary_expr< conv_1d_same_expr< A, B >, true >, etl::base_temporary_expr< conv_1d_valid_expr< A, B >, true >, etl::base_temporary_expr< conv_2d_backward_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_2d_full_deep_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_2d_full_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_2d_full_multi_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_2d_same_deep_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_2d_same_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_2d_same_multi_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_2d_valid_deep_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_2d_valid_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_2d_valid_multi_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_2d_valid_multi_multi_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_4d_backward_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_4d_backward_filter_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_4d_full_expr< A, B, Flipped >, true >, etl::base_temporary_expr< conv_4d_valid_back_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_4d_valid_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< conv_4d_valid_filter_expr< A, B, S1, S2, P1, P2, Flipped >, true >, etl::base_temporary_expr< convmtx_2d_expr< A, K1, K2 >, true >, etl::base_temporary_expr< dyn_conv_2d_backward_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_2d_valid_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_2d_valid_multi_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_2d_valid_multi_multi_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_4d_backward_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_4d_backward_filter_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_4d_valid_back_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_4d_valid_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_conv_4d_valid_filter_expr< A, B, Flipped >, true >, etl::base_temporary_expr< dyn_pool_2d_expr< A, Impl >, Fast >, etl::base_temporary_expr< dyn_pool_3d_expr< A, Impl >, true >, etl::base_temporary_expr< dyn_pool_derivative_expr< A, B, Impl >, true >, etl::base_temporary_expr< dyn_pool_upsample_2d_expr< A, B, C, Max >, true >, etl::base_temporary_expr< dyn_pool_upsample_3d_expr< A, B, C, Max >, true >, etl::base_temporary_expr< dyn_prob_pool_2d_expr< A >, Fast >, etl::base_temporary_expr< dyn_upsample_2d_expr< A >, Fast >, etl::base_temporary_expr< dyn_upsample_3d_expr< A >, true >, etl::base_temporary_expr< embedding_gradients_expr< A, B, C >, true >, etl::base_temporary_expr< embedding_lookup_expr< A, B >, true >, etl::base_temporary_expr< fft_expr< A, T, Impl >, true >, etl::base_temporary_expr< gemm_expr< A, B, Strassen >, true >, etl::base_temporary_expr< gemv_expr< A, B >, true >, etl::base_temporary_expr< gevm_expr< A, B >, true >, etl::base_temporary_expr< inv_expr< A >, true >, etl::base_temporary_expr< outer_product_expr< A, B >, true >, etl::base_temporary_expr< pool_2d_expr< A, C1, C2, S1, S2, P1, P2, Impl >, true >, etl::base_temporary_expr< pool_3d_expr< A, C1, C2, C3, S1, S2, S3, P1, P2, P3, Impl >, true >, etl::base_temporary_expr< pool_derivative_expr< A, B, C1, C2, C3, S1, S2, S3, P1, P2, P3, Impl >, true >, etl::base_temporary_expr< pool_upsample_2d_expr< A, B, C, C1, C2, S1, S2, P1, P2, Max >, true >, etl::base_temporary_expr< pool_upsample_3d_expr< A, B, C, C1, C2, C3, Max >, true >, etl::base_temporary_expr< prob_pool_2d_expr< A, C1, C2 >, true >, etl::base_temporary_expr< transpose_expr< A >, true >, etl::base_temporary_expr< transpose_front_expr< A >, true >, etl::base_temporary_expr< upsample_2d_expr< A, C1, C2, S1, S2, P1, P2 >, true >, etl::base_temporary_expr< upsample_3d_expr< A, C1, C2, C3 >, true >, and etl::base_temporary_expr< D, Fast >.

Public Types

using derived_t = D
 The derived type.
 

Public Member Functions

derived_tas_derived () noexcept
 Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
 
const derived_tas_derived () const noexcept
 Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
 
bool is_finite () const noexcept
 Indicates if the expression contains only finite values. More...
 
bool is_zero () const noexcept
 Indicates if the expression contains only zero values. More...
 
bool is_diagonal () const noexcept
 Indicates if the expression is diagonal. More...
 
bool is_uniform () const noexcept
 Indicates if the expression is uniform, i.e. all elements are of the same value. More...
 

Detailed Description

template<typename D>
struct etl::value_testable< D >

CRTP class to inject functions testing values of the expressions.

This CRTP class injects test for is_finite and is_zero.

Member Function Documentation

◆ as_derived() [1/2]

template<typename D>
derived_t& etl::value_testable< D >::as_derived ( )
inlinenoexcept

Returns a reference to the derived object, i.e. the object using the CRTP injector.

Returns
a reference to the derived object.

◆ as_derived() [2/2]

template<typename D>
const derived_t& etl::value_testable< D >::as_derived ( ) const
inlinenoexcept

Returns a reference to the derived object, i.e. the object using the CRTP injector.

Returns
a reference to the derived object.

◆ is_diagonal()

template<typename D>
bool etl::value_testable< D >::is_diagonal ( ) const
inlinenoexcept

Indicates if the expression is diagonal.

Returns
true if the expression is diagonal, false otherwise.

◆ is_finite()

template<typename D>
bool etl::value_testable< D >::is_finite ( ) const
inlinenoexcept

Indicates if the expression contains only finite values.

Returns
true if the sequence only contains finite values, false otherwise.

◆ is_uniform()

template<typename D>
bool etl::value_testable< D >::is_uniform ( ) const
inlinenoexcept

Indicates if the expression is uniform, i.e. all elements are of the same value.

Returns
true if the expression is uniform, false otherwise.

◆ is_zero()

template<typename D>
bool etl::value_testable< D >::is_zero ( ) const
inlinenoexcept

Indicates if the expression contains only zero values.

Returns
true if the sequence only contains zero values, false otherwise.

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