libboloq
A library to replesent binary functions using Binary Decision Diagram.
 全て クラス 名前空間 関数 型定義 ページ
公開型 | 公開メンバ関数 | 全メンバ一覧
boloq::basic_node< LT, IT > クラステンプレート

基本的なノードのクラス [詳解]

#include <node.h>

boloq::basic_node< LT, IT > の継承関係図

公開型

using index_type = IT
 インデックスを表す型
 
using label_type = LT
 ラベルを表す型
 
using node_ptr = std::shared_ptr< const self_type >
 

公開メンバ関数

constexpr basic_node (const index_type &i)
 定節点を生成するコンストラクタ [詳解]
 
constexpr basic_node (const index_type &i, const label_type &l, const node_ptr &_then, const node_ptr &_else)
 コンストラクタ [詳解]
 
constexpr const index_typeindex () const
 ノードの内容一意に定まる値を返します
 
constexpr const label_typelabel () const
 ノードのラベルを返します [詳解]
 
constexpr bool is_terminal () const
 このノードが終端かどうかを表します
 
const node_ptr then_node () const
 
const node_ptr else_node () const
 
template<class V >
void accept (V &visitor) const
 visitorを受理します
 

詳解

template<class LT, class IT>
class boloq::basic_node< LT, IT >

基本的なノードのクラス

型定義メンバ詳解

template<class LT , class IT >
using boloq::basic_node< LT, IT >::node_ptr = std::shared_ptr<const self_type>

このクラスのポインタを表す型

構築子と解体子

template<class LT , class IT >
constexpr boloq::basic_node< LT, IT >::basic_node ( const index_type i)
inlineexplicit

定節点を生成するコンストラクタ

定節点は必ず 0-節点 もしくは 1-節点 のどちらかです。 index には 0 もしくは 1 を指定してください。

template<class LT , class IT >
constexpr boloq::basic_node< LT, IT >::basic_node ( const index_type i,
const label_type l,
const node_ptr _then,
const node_ptr _else 
)
inline

コンストラクタ

index には2以上を指定してください

関数詳解

template<class LT , class IT >
const node_ptr boloq::basic_node< LT, IT >::else_node ( ) const
inline

0枝側のノードを返します

template<class LT , class IT >
constexpr const label_type& boloq::basic_node< LT, IT >::label ( ) const
inline

ノードのラベルを返します

一般的には、論理関数の変数名や組み合わせ集合のアイテム名を表します

template<class LT , class IT >
const node_ptr boloq::basic_node< LT, IT >::then_node ( ) const
inline

1枝側のノードを返します


このクラス詳解は次のファイルから抽出されました: