Botan 3.7.1
Crypto and TLS for C&
Botan::detail::Strong_Base< T > Class Template Reference

#include <strong_type.h>

Inheritance diagram for Botan::detail::Strong_Base< T >:
Botan::detail::Container_Strong_Adapter_Base< T > Botan::detail::Strong_Adapter< T > Botan::detail::Strong_Adapter< T > Botan::detail::Strong_Adapter< T > Botan::detail::Strong_Adapter< T > Botan::detail::Strong_Adapter< T > Botan::Strong< T, TagTypeT, Capabilities > Botan::Strong< T, TagTypeT, Capabilities > Botan::Strong< T, TagTypeT, Capabilities > Botan::Strong< T, TagTypeT, Capabilities >

Public Types

using wrapped_type = T
 

Public Member Functions

constexpr Tget () &
 
constexpr T && get () &&
 
constexpr const Tget () const &
 
constexpr const T && get () const &&
 
Strong_Baseoperator= (const Strong_Base &)=default
 
Strong_Baseoperator= (Strong_Base &&) noexcept=default
 
 Strong_Base ()=default
 
 Strong_Base (const Strong_Base &)=default
 
 Strong_Base (Strong_Base &&) noexcept=default
 
constexpr Strong_Base (T v)
 

Detailed Description

template<typename T>
class Botan::detail::Strong_Base< T >

Definition at line 34 of file strong_type.h.

Member Typedef Documentation

◆ wrapped_type

template<typename T >
using Botan::detail::Strong_Base< T >::wrapped_type = T

Definition at line 39 of file strong_type.h.

Constructor & Destructor Documentation

◆ Strong_Base() [1/4]

template<typename T >
Botan::detail::Strong_Base< T >::Strong_Base ( )
default

◆ Strong_Base() [2/4]

template<typename T >
Botan::detail::Strong_Base< T >::Strong_Base ( const Strong_Base< T > & )
default

◆ Strong_Base() [3/4]

template<typename T >
Botan::detail::Strong_Base< T >::Strong_Base ( Strong_Base< T > && )
defaultnoexcept

◆ Strong_Base() [4/4]

template<typename T >
Botan::detail::Strong_Base< T >::Strong_Base ( T v)
inlineexplicitconstexpr

Definition at line 48 of file strong_type.h.

48: m_value(std::move(v)) {}

Member Function Documentation

◆ get() [1/4]

template<typename T >
T & Botan::detail::Strong_Base< T >::get ( ) &
inlineconstexpr

Definition at line 50 of file strong_type.h.

50{ return m_value; }

Referenced by Botan::detail::Strong_Adapter< T >::_const_time_poison(), Botan::detail::Strong_Adapter< T >::_const_time_unpoison(), Botan::detail::Strong_Adapter< T >::all_vartime(), Botan::Classic_McEliece_Field_Ordering::alphas(), Botan::Classic_McEliece_Field_Ordering::alphas_control_bits(), Botan::detail::Strong_Adapter< T >::any_vartime(), Botan::detail::Strong_Adapter< T >::as(), Botan::detail::Container_Strong_Adapter_Base< T >::at(), Botan::detail::Container_Strong_Adapter_Base< T >::at(), Botan::detail::Strong_Adapter< T >::at(), Botan::detail::Strong_Adapter< T >::at(), Botan::detail::Strong_Adapter< T >::back(), Botan::detail::Strong_Adapter< T >::back(), Botan::detail::Container_Strong_Adapter_Base< T >::begin(), Botan::detail::Container_Strong_Adapter_Base< T >::begin(), Botan::detail::Strong_Adapter< T >::capacity(), Botan::detail::Container_Strong_Adapter_Base< T >::cbegin(), Botan::detail::Container_Strong_Adapter_Base< T >::cbegin(), Botan::detail::Container_Strong_Adapter_Base< T >::cend(), Botan::detail::Container_Strong_Adapter_Base< T >::cend(), Botan::chain_lengths(), Botan::compute_root(), Botan::detail::Strong_Adapter< T >::data(), Botan::detail::Strong_Adapter< T >::data(), Botan::detail::Container_Strong_Adapter_Base< T >::empty(), Botan::detail::Container_Strong_Adapter_Base< T >::end(), Botan::detail::Container_Strong_Adapter_Base< T >::end(), Botan::detail::Strong_Adapter< T >::equals(), Botan::GF_Mask::expand(), Botan::detail::Strong_Adapter< T >::flip(), Botan::detail::Strong_Adapter< T >::flip(), Botan::detail::Strong_Adapter< T >::from_bytes(), Botan::detail::Strong_Adapter< T >::front(), Botan::detail::Strong_Adapter< T >::front(), Botan::detail::Strong_Adapter< T >::hamming_weight(), Botan::detail::Strong_Adapter< T >::has_odd_hamming_weight(), Botan::ht_sign(), Botan::ht_verify(), Botan::GF_Mask::if_set_return(), Botan::GF_Mask::is_equal(), Botan::GF_Mask::is_lte(), Botan::GF_Mask::is_zero(), Botan::LMOTS_Private_Key::LMOTS_Private_Key(), Botan::Classic_McEliece_GF::log_q_from_mod(), Botan::detail::Strong_Adapter< T >::none_vartime(), Botan::operator&(), Botan::operator&(), Botan::operator&=(), Botan::operator&=(), Botan::Classic_McEliece_GF::operator*(), Botan::operator*(), Botan::operator*(), Botan::operator*=(), Botan::operator*=(), Botan::operator+(), Botan::operator+(), Botan::operator++(), Botan::operator++(), Botan::operator+=(), Botan::operator+=(), Botan::operator-(), Botan::operator-(), Botan::operator--(), Botan::operator--(), Botan::operator-=(), Botan::operator-=(), Botan::operator/(), Botan::operator/(), Botan::operator/=(), Botan::operator/=(), Botan::operator<<(), Botan::operator<<(), Botan::operator<<(), Botan::operator<<=(), Botan::operator<<=(), Botan::operator<=>(), Botan::operator<=>(), Botan::operator==(), Botan::operator==(), Botan::operator>>(), Botan::operator>>(), Botan::operator>>=(), Botan::operator>>=(), Botan::detail::Container_Strong_Adapter_Base< T >::operator[](), Botan::detail::Container_Strong_Adapter_Base< T >::operator[](), Botan::operator^(), Botan::operator^(), Botan::operator^=(), Botan::operator^=(), Botan::operator|(), Botan::operator|(), Botan::operator|=(), Botan::operator|=(), Botan::HSS_LMS_Params::params_at_level(), Botan::Classic_McEliece_Field_Ordering::permute_with_pivots(), Botan::detail::Strong_Adapter< T >::pop_back(), Botan::TLS::Cipher_State::psk(), Botan::detail::Strong_Adapter< T >::push_back(), Botan::Classic_McEliece_Encryptor::raw_kem_encrypt(), Botan::detail::Container_Strong_Adapter_Base< T >::reserve(), Botan::detail::Strong_Adapter< T >::reserve(), Botan::detail::Container_Strong_Adapter_Base< T >::resize(), Botan::GF_Mask::select(), Botan::GF_Mask::select(), Botan::Classic_McEliece_PrivateKeyInternal::serialize(), Botan::TLS::New_Session_Ticket_12::serialize(), Botan::TLS::New_Session_Ticket_13::serialize(), Botan::detail::Strong_Adapter< T >::set(), Botan::Sphincs_Address::set_chain_address(), Botan::Sphincs_Address::set_hash_address(), Botan::Sphincs_Address::set_keypair_address(), Botan::Sphincs_Address::set_layer_address(), Botan::Sphincs_Address::set_tree_address(), Botan::Sphincs_Address::set_tree_height(), Botan::Sphincs_Address::set_tree_index(), Botan::HSS_LMS_PrivateKeyInternal::sign(), Botan::LMS_PrivateKey::sign_and_get_pk(), Botan::HSS_Signature::signed_pub_key(), Botan::detail::Container_Strong_Adapter_Base< T >::size(), Botan::detail::Strong_Adapter< T >::subvector(), Botan::detail::Strong_Adapter< T >::subvector(), Botan::detail::Strong_Adapter< T >::subvector_replace(), Botan::detail::Strong_Adapter< T >::to_bytes(), Botan::detail::Strong_Adapter< T >::to_bytes(), Botan::detail::Strong_Adapter< T >::to_string(), Botan::treehash(), Botan::detail::Strong_Adapter< T >::unset(), Botan::wots_public_key_from_signature(), and Botan::x448().

◆ get() [2/4]

template<typename T >
T && Botan::detail::Strong_Base< T >::get ( ) &&
inlineconstexpr

Definition at line 54 of file strong_type.h.

54{ return std::move(m_value); }

◆ get() [3/4]

template<typename T >
const T & Botan::detail::Strong_Base< T >::get ( ) const &
inlineconstexpr

Definition at line 52 of file strong_type.h.

52{ return m_value; }

◆ get() [4/4]

template<typename T >
const T && Botan::detail::Strong_Base< T >::get ( ) const &&
inlineconstexpr

Definition at line 56 of file strong_type.h.

56{ return std::move(m_value); }

◆ operator=() [1/2]

template<typename T >
Strong_Base & Botan::detail::Strong_Base< T >::operator= ( const Strong_Base< T > & )
default

◆ operator=() [2/2]

template<typename T >
Strong_Base & Botan::detail::Strong_Base< T >::operator= ( Strong_Base< T > && )
defaultnoexcept

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