Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::AI::Tensors::Value Class Reference

#include <HAITensor.h>

Inheritance diagram for Harlinn::AI::Tensors::Value:
[legend]
Collaboration diagram for Harlinn::AI::Tensors::Value:
[legend]

Public Types

using Base = std::enable_shared_from_this<Value>
 
using TypeInfoBase = Meta::TypeInfoBase
 

Public Member Functions

 Value (const std::shared_ptr< TypeInfoBase > &typeInfo)
 
 Value (std::shared_ptr< TypeInfoBase > &&typeInfo)
 
const std::shared_ptr< TypeInfoBase > & TypeInfo () const noexcept
 
template<typename T >
requires std::is_base_of_v<Value, std::remove_cvref_t<T>>
std::shared_ptr< std::remove_cvref_t< T > > As ()
 
template<typename T >
requires std::is_base_of_v<Value, std::remove_cvref_t<T>>
std::shared_ptr< const std::remove_cvref_t< T > > As () const
 

Private Attributes

std::shared_ptr< TypeInfoBasetypeInfo_
 

Member Typedef Documentation

◆ Base

using Harlinn::AI::Tensors::Value::Base = std::enable_shared_from_this<Value>

◆ TypeInfoBase

Constructor & Destructor Documentation

◆ Value() [1/2]

Harlinn::AI::Tensors::Value::Value ( const std::shared_ptr< TypeInfoBase > & typeInfo)
inline

◆ Value() [2/2]

Harlinn::AI::Tensors::Value::Value ( std::shared_ptr< TypeInfoBase > && typeInfo)
inline

Member Function Documentation

◆ As() [1/2]

template<typename T >
requires std::is_base_of_v<Value, std::remove_cvref_t<T>>
std::shared_ptr< std::remove_cvref_t< T > > Harlinn::AI::Tensors::Value::As ( )
inline

◆ As() [2/2]

template<typename T >
requires std::is_base_of_v<Value, std::remove_cvref_t<T>>
std::shared_ptr< const std::remove_cvref_t< T > > Harlinn::AI::Tensors::Value::As ( ) const
inline

◆ TypeInfo()

const std::shared_ptr< TypeInfoBase > & Harlinn::AI::Tensors::Value::TypeInfo ( ) const
inlinenoexcept

Member Data Documentation

◆ typeInfo_

std::shared_ptr<TypeInfoBase> Harlinn::AI::Tensors::Value::typeInfo_
private

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