RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
RDKit::RDValue Struct Reference

#include <RDValue-doublemagic.h>

Public Member Functions

 RDValue ()
 
 RDValue (double number)
 
 RDValue (float number)
 
 RDValue (int32_t number)
 
 RDValue (unsigned int number)
 
 RDValue (bool number)
 
 RDValue (std::any *pointer)
 
 RDValue (const std::any &any)
 
template<class T >
 RDValue (const T &v)
 
 RDValue (const std::string &v)
 
 RDValue (const std::vector< double > &v)
 
 RDValue (const std::vector< float > &v)
 
 RDValue (const std::vector< int > &v)
 
 RDValue (const std::vector< unsigned int > &v)
 
 RDValue (const std::vector< std::string > &v)
 
boost::uint64_t getTag () const
 
template<class T >
T * ptrCast () const
 
void destroy ()
 
 RDValue ()
 
 RDValue (double v)
 
 RDValue (float v)
 
 RDValue (int v)
 
 RDValue (unsigned v)
 
 RDValue (bool v)
 
 RDValue (std::any *v)
 
 RDValue (const std::any &v)
 
 RDValue (const std::string &v)
 
template<class T >
 RDValue (const T &v)
 
 RDValue (const std::vector< double > &v)
 
 RDValue (const std::vector< float > &v)
 
 RDValue (const std::vector< int > &v)
 
 RDValue (const std::vector< unsigned int > &v)
 
 RDValue (const std::vector< std::string > &v)
 
short getTag () const
 
template<class T >
T * ptrCast () const
 
void destroy ()
 

Static Public Member Functions

static void cleanup_rdvalue (RDValue v)
 
static void cleanup_rdvalue (RDValue &rdvalue)
 

Public Attributes

union { 
 
   double   doubleBits 
 
   boost::uint64_t   otherBits 
 
};  
 
RDTypeTag::detail::Value value
 
short type
 
short reserved_tag = 0
 

Static Public Attributes

static const boost::uint64_t TagMask = 0xFFFF000000000000
 
static const boost::uint64_t PointerTagMask = 0xFFFF000000000007
 
static const boost::uint64_t ApplyMask = 0x0000FFFFFFFFFFFF
 
static const boost::uint64_t ApplyPtrMask = 0x0000FFFFFFFFFFF8
 

Detailed Description

Definition at line 167 of file RDValue-doublemagic.h.

Constructor & Destructor Documentation

◆ RDValue() [1/30]

RDKit::RDValue::RDValue ( )
inline

Definition at line 179 of file RDValue-doublemagic.h.

◆ RDValue() [2/30]

RDKit::RDValue::RDValue ( double number)
inline

◆ RDValue() [3/30]

RDKit::RDValue::RDValue ( float number)
inline

Definition at line 191 of file RDValue-doublemagic.h.

References RDKit::RDTypeTag::FloatTag, otherBits, and RDKit::rdvalue_is().

◆ RDValue() [4/30]

RDKit::RDValue::RDValue ( int32_t number)
inline

Definition at line 196 of file RDValue-doublemagic.h.

References ApplyMask, RDKit::RDTypeTag::IntTag, and otherBits.

◆ RDValue() [5/30]

RDKit::RDValue::RDValue ( unsigned int number)
inline

Definition at line 200 of file RDValue-doublemagic.h.

References ApplyMask, otherBits, and RDKit::RDTypeTag::UnsignedIntTag.

◆ RDValue() [6/30]

RDKit::RDValue::RDValue ( bool number)
inline

Definition at line 205 of file RDValue-doublemagic.h.

References ApplyMask, RDKit::RDTypeTag::BoolTag, and otherBits.

◆ RDValue() [7/30]

RDKit::RDValue::RDValue ( std::any * pointer)
inline

Definition at line 210 of file RDValue-doublemagic.h.

References RDKit::RDTypeTag::AnyTag, otherBits, and RDKit::rdvalue_is().

◆ RDValue() [8/30]

RDKit::RDValue::RDValue ( const std::any & any)
inline

Definition at line 217 of file RDValue-doublemagic.h.

References RDKit::RDTypeTag::AnyTag, otherBits, and RDKit::rdvalue_is().

◆ RDValue() [9/30]

template<class T >
RDKit::RDValue::RDValue ( const T & v)
inline

Definition at line 227 of file RDValue-doublemagic.h.

References RDKit::RDTypeTag::AnyTag, otherBits, and RDKit::rdvalue_is().

◆ RDValue() [10/30]

RDKit::RDValue::RDValue ( const std::string & v)
inline

◆ RDValue() [11/30]

RDKit::RDValue::RDValue ( const std::vector< double > & v)
inline

◆ RDValue() [12/30]

RDKit::RDValue::RDValue ( const std::vector< float > & v)
inline

◆ RDValue() [13/30]

RDKit::RDValue::RDValue ( const std::vector< int > & v)
inline

◆ RDValue() [14/30]

RDKit::RDValue::RDValue ( const std::vector< unsigned int > & v)
inline

◆ RDValue() [15/30]

RDKit::RDValue::RDValue ( const std::vector< std::string > & v)
inline

◆ RDValue() [16/30]

RDKit::RDValue::RDValue ( )
inline

Definition at line 222 of file RDValue-taggedunion.h.

◆ RDValue() [17/30]

RDKit::RDValue::RDValue ( double v)
inline

Definition at line 224 of file RDValue-taggedunion.h.

◆ RDValue() [18/30]

RDKit::RDValue::RDValue ( float v)
inline

Definition at line 225 of file RDValue-taggedunion.h.

◆ RDValue() [19/30]

RDKit::RDValue::RDValue ( int v)
inline

Definition at line 226 of file RDValue-taggedunion.h.

◆ RDValue() [20/30]

RDKit::RDValue::RDValue ( unsigned v)
inline

Definition at line 227 of file RDValue-taggedunion.h.

◆ RDValue() [21/30]

RDKit::RDValue::RDValue ( bool v)
inline

Definition at line 228 of file RDValue-taggedunion.h.

◆ RDValue() [22/30]

RDKit::RDValue::RDValue ( std::any * v)
inline

Definition at line 230 of file RDValue-taggedunion.h.

◆ RDValue() [23/30]

RDKit::RDValue::RDValue ( const std::any & v)
inline

Definition at line 233 of file RDValue-taggedunion.h.

◆ RDValue() [24/30]

RDKit::RDValue::RDValue ( const std::string & v)
inline

Definition at line 235 of file RDValue-taggedunion.h.

◆ RDValue() [25/30]

template<class T >
RDKit::RDValue::RDValue ( const T & v)
inline

Definition at line 238 of file RDValue-taggedunion.h.

◆ RDValue() [26/30]

RDKit::RDValue::RDValue ( const std::vector< double > & v)
inline

Definition at line 241 of file RDValue-taggedunion.h.

◆ RDValue() [27/30]

RDKit::RDValue::RDValue ( const std::vector< float > & v)
inline

Definition at line 243 of file RDValue-taggedunion.h.

◆ RDValue() [28/30]

RDKit::RDValue::RDValue ( const std::vector< int > & v)
inline

Definition at line 245 of file RDValue-taggedunion.h.

◆ RDValue() [29/30]

RDKit::RDValue::RDValue ( const std::vector< unsigned int > & v)
inline

Definition at line 247 of file RDValue-taggedunion.h.

◆ RDValue() [30/30]

RDKit::RDValue::RDValue ( const std::vector< std::string > & v)
inline

Definition at line 250 of file RDValue-taggedunion.h.

Member Function Documentation

◆ cleanup_rdvalue() [1/2]

static void RDKit::RDValue::cleanup_rdvalue ( RDValue & rdvalue)
inlinestatic

Definition at line 296 of file RDValue-taggedunion.h.

References RDKit::rdvalue_is().

◆ cleanup_rdvalue() [2/2]

◆ destroy() [1/2]

◆ destroy() [2/2]

◆ getTag() [1/2]

◆ getTag() [2/2]

short RDKit::RDValue::getTag ( ) const
inline

Definition at line 253 of file RDValue-taggedunion.h.

References type.

◆ ptrCast() [1/2]

◆ ptrCast() [2/2]

template<class T >
T * RDKit::RDValue::ptrCast ( ) const
inline

Definition at line 257 of file RDValue-taggedunion.h.

References value.

Member Data Documentation

◆ [union]

union { ... } RDKit::RDValue

◆ ApplyMask

const boost::uint64_t RDKit::RDValue::ApplyMask = 0x0000FFFFFFFFFFFF
static

Definition at line 171 of file RDValue-doublemagic.h.

Referenced by RDValue(), RDValue(), and RDValue().

◆ ApplyPtrMask

const boost::uint64_t RDKit::RDValue::ApplyPtrMask = 0x0000FFFFFFFFFFF8
static

Definition at line 172 of file RDValue-doublemagic.h.

◆ doubleBits

double RDKit::RDValue::doubleBits

Definition at line 175 of file RDValue-doublemagic.h.

Referenced by RDValue(), and RDKit::rdvalue_cast< double >().

◆ otherBits

◆ PointerTagMask

const boost::uint64_t RDKit::RDValue::PointerTagMask = 0xFFFF000000000007
static

Definition at line 170 of file RDValue-doublemagic.h.

Referenced by getTag().

◆ reserved_tag

short RDKit::RDValue::reserved_tag = 0

Definition at line 220 of file RDValue-taggedunion.h.

◆ TagMask

const boost::uint64_t RDKit::RDValue::TagMask = 0xFFFF000000000000
static

Definition at line 169 of file RDValue-doublemagic.h.

Referenced by getTag().

◆ type

short RDKit::RDValue::type

Definition at line 219 of file RDValue-taggedunion.h.

Referenced by destroy(), and getTag().

◆ value


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