WebCFace 2.5.2
Web-based Communication Framework & Dashboard-like UI
Loading...
Searching...
No Matches
InputRef Class Reference

名前を指定しないText More...

#include <webcface/text.h>

Public Member Functions

 InputRef ()
 
 InputRef (const InputRef &)=default
 
InputRefoperator= (const InputRef &)=default
 
 InputRef (InputRef &&)=delete
 
InputRefoperator= (InputRef &&)=delete
 
 ~InputRef ()=default
 
const ValAdaptorget () const
 値を返す
 
template<typename T , typename std::enable_if_t< std::is_convertible_v< ValAdaptor, T >, std::nullptr_t > = nullptr>
 operator T () const
 値を返す
 
bool empty () const
 値が空かどうか調べる
 
const std::string & asStringRef () const
 文字列として返す
 
const std::wstring & asWStringRef () const
 文字列として返す (wstring)
 
std::string asString () const
 文字列として返す(コピー)
 
std::wstring asWString () const
 文字列として返す(コピー) (wstring)
 
double asDouble () const
 実数として返す
 
int asInt () const
 int型の整数として返す
 
long long asLLong () const
 long long型の整数として返す
 
template<typename T >
double as () const
 数値として返す
 
bool asBool () const
 bool値を返す
 
template<typename T , typename std::enable_if_t< std::is_constructible_v< ValAdaptor, T >, std::nullptr_t > = nullptr>
bool operator== (const T &other) const
 
template<typename T , typename std::enable_if_t< std::is_constructible_v< ValAdaptor, T >, std::nullptr_t > = nullptr>
bool operator!= (const T &other) const
 

Friends

class TemporalViewComponent
 

Detailed Description

名前を指定しないText

viewでinputの値の管理に使う。 数値型で用いることもあるが内部データ型としては常にTextを使用する。

bindしたviewをsync()するときに名前が決定される(lock)。 InputRefオブジェクトのコピーは名前が決まる前後でつねに同じTextを参照し、 その後も同じInputRefオブジェクトを使用することで同じ値を参照することができる

lockされた後にInputRefを破棄し、その後新しいInputRefを同じviewにbindした場合、 sync()時にその新しいInputRefには前のInputRefと同じ名前が割り当てられることで同じ値になる

Constructor & Destructor Documentation

◆ InputRef() [1/3]

InputRef ( )

◆ InputRef() [2/3]

InputRef ( const InputRef )
default

◆ InputRef() [3/3]

InputRef ( InputRef &&  )
delete

moveするとfieldがnullptrになってしまうがそれはまずいのでムーブ禁止

◆ ~InputRef()

~InputRef ( )
default

Member Function Documentation

◆ as()

template<typename T >
double as ( ) const
inline

数値として返す

Since
ver1.11

as<T>(), Tはdoubleなどの実数型、intなどの整数型

Deprecated:
ver2.0〜 asDouble(), asInt(), asLLong() を追加 さらにas<T>にはTになにを指定してもdoubleで返るというバグがある

◆ asBool()

bool asBool ( ) const
inline

bool値を返す

Since
ver1.11

◆ asDouble()

double asDouble ( ) const
inline

実数として返す

Since
ver2.0

◆ asInt()

int asInt ( ) const
inline

int型の整数として返す

Since
ver2.0

◆ asLLong()

long long asLLong ( ) const
inline

long long型の整数として返す

Since
ver2.0

◆ asString()

std::string asString ( ) const
inline

文字列として返す(コピー)

Since
ver1.11

◆ asStringRef()

const std::string & asStringRef ( ) const
inline

文字列として返す

Since
ver1.11
  • std::stringのconst参照を返す。
    • 参照は次に値を取得して別の値が返ったときまで有効
    • ver2.0〜: 参照は少なくとも次のClient::sync()までは有効

◆ asWString()

std::wstring asWString ( ) const
inline

文字列として返す(コピー) (wstring)

Since
ver2.0

◆ asWStringRef()

const std::wstring & asWStringRef ( ) const
inline

文字列として返す (wstring)

Since
ver2.0
See also
asStringRef()

◆ empty()

bool empty ( ) const
inline

値が空かどうか調べる

Since
ver1.11

◆ get()

const ValAdaptor & get ( ) const

値を返す

  • ver1.11からconst参照
    • 参照は次に値を取得して別の値が返ったときまで有効
    • ver2.0〜: 参照は少なくとも次のClient::sync()までは有効

◆ operator T()

template<typename T , typename std::enable_if_t< std::is_convertible_v< ValAdaptor, T >, std::nullptr_t > = nullptr>
operator T ( ) const
inline

値を返す

◆ operator!=()

template<typename T , typename std::enable_if_t< std::is_constructible_v< ValAdaptor, T >, std::nullptr_t > = nullptr>
bool operator!= ( const T &  other) const
inline

◆ operator=() [1/2]

InputRef & operator= ( const InputRef )
default

◆ operator=() [2/2]

InputRef & operator= ( InputRef &&  )
delete

◆ operator==()

template<typename T , typename std::enable_if_t< std::is_constructible_v< ValAdaptor, T >, std::nullptr_t > = nullptr>
bool operator== ( const T &  other) const
inline

Friends And Related Symbol Documentation

◆ TemporalViewComponent

friend class TemporalViewComponent
friend

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