PCP: C++ Preprocessor
公開メンバ関数 | 限定公開メンバ関数 | 静的限定公開メンバ関数 | 全メンバ一覧
c_generator

C90用の出力データ生成器 [詳解]

#include "pcp/c_generator.class.php"

c_generator の継承関係図
Inheritance graph
[凡例]
c_generator 連携図
Collaboration graph
[凡例]

公開メンバ関数

 get_array (array $sig)
 配列の生成 [詳解]
 
 get_class (string $class_key, array $sig, bool $incomplete, bool $omit_semicolon)
 構造体または共用体の生成 [詳解]
 
 get_enum (array $sig, bool $incomplete, bool $omit_semicolon)
 列挙体の生成 [詳解]
 
 get_fn (array $sig, bool $omit_semicolon)
 関数頭部の生成 [詳解]
 
 get_pointer (array $sig)
 ポインタの生成 [詳解]
 
 get_qualified_type (array $sig)
 型修飾付きの型の生成 [詳解]
 
 get_reference (array $sig)
 参照の生成 [詳解]
 
 get_version ()
 バージョン年の取得 [詳解]
 
 has_longlong ()
 long long型をサポートしているかどうかの判定 [詳解]
 
 is_c ()
 Cの判定 [詳解]
 
- 基底クラス generator に属する継承公開メンバ関数
 __call ($name, $args)
 アクセス不能メソッドの実行 [詳解]
 
 __construct (?string $toolset=null)
 コンストラクタ [詳解]
 
 get_ini (string $name)
 ini情報を取得 [詳解]
 
 get_ini_as_string ()
 ini情報を文字列として取得 [詳解]
 
 get_keywords ()
 キーワード一覧の取得 [詳解]
 
 get_type (string $type_name)
 型名の取得 [詳解]
 
 set_ini (string $name, $value)
 ini情報の設定 [詳解]
 

限定公開メンバ関数

 get_parameter_list (array $params, bool $template)
 仮引数並びの生成 [詳解]
 
 get_template (array $sig)
 テンプレート情報の生成 [詳解]
 
- 基底クラス generator に属する継承限定公開メンバ関数
 get_type_table ()
 型テーブルの取得 [詳解]
 
 setup_type_table_by_data_model (array $type_table)
 データモデルに応じた型テーブルの初期設定 [詳解]
 

静的限定公開メンバ関数

static get_pragma_operator (string $s)
 _Pragma演算子の文字列を取得 [詳解]
 
- 基底クラス generator に属する継承静的限定公開メンバ関数
static get_pragma_directive (string $s)
 #pragma指令の文字列を取得 [詳解]
 

その他の継承メンバ

- 基底クラス generator に属する継承限定公開変数類
 $toolset
 対象ツールセット
 

詳解

C90用の出力データ生成器

Amendment1に対応していることを前提としたコード生成を行う。

関数詳解

◆ get_array()

get_array ( array  $sig)

配列の生成

引数
[in]$sigシグニチャ
戻り値
生成した文字列を返す。

◆ get_class()

get_class ( string  $class_key,
array  $sig,
bool  $incomplete,
bool  $omit_semicolon 
)

構造体または共用体の生成

引数
[in]$class_keyクラスキー('struct'または'union'を指定)
[in]$sigシグニチャ
[in]$incomplete不完全宣言を生成するときはtrue
[in]$omit_semicolon末尾のセミコロンを省略する。
戻り値
生成された文字列を返す。
覚え書き
現状では、C++特有のクラス仕様には対応しない。

◆ get_enum()

get_enum ( array  $sig,
bool  $incomplete,
bool  $omit_semicolon 
)

列挙体の生成

引数
[in]$sigシグニチャ
[in]$incomplete不完全宣言を生成するときはtrue
[in]$omit_semicolon末尾のセミコロンを省略する。
戻り値
生成された文字列を返す。

◆ get_fn()

get_fn ( array  $sig,
bool  $omit_semicolon 
)

関数頭部の生成

引数
[in]$sigシグニチャ
[in]$omit_semicolon末尾のセミコロンを省略する。
戻り値
生成された文字列を返す。

◆ get_parameter_list()

get_parameter_list ( array  $params,
bool  $template 
)
protected

仮引数並びの生成

引数
[in]$params仮引数情報の配列
戻り値
生成された文字列を返す。 0 | [ [ 仮引数名 => 型名 or [ 型名, 省略時実引数 ], ... ]

◆ get_pointer()

get_pointer ( array  $sig)

ポインタの生成

引数
[in]$sigシグニチャ
戻り値
生成した文字列を返す。

◆ get_pragma_operator()

static get_pragma_operator ( string  $s)
staticprotected

_Pragma演算子の文字列を取得

引数
[in]$s_Pragma演算子のパラメータ
戻り値
生成した文字列を返す。

◆ get_qualified_type()

get_qualified_type ( array  $sig)

型修飾付きの型の生成

引数
[in]$sigシグニチャ
戻り値
生成した文字列を返す。

◆ get_reference()

get_reference ( array  $sig)

参照の生成

引数
[in]$sigシグニチャ
戻り値
生成した文字列を返す。

◆ get_template()

get_template ( array  $sig)
protected

テンプレート情報の生成

引数
[in]$sigシグニチャ
戻り値
生成された文字列を返す。

◆ get_version()

get_version ( )

バージョン年の取得

戻り値
1990を返す。

◆ has_longlong()

has_longlong ( )

long long型をサポートしているかどうかの判定

戻り値
long long型をサポートしていればtrueを、サポートしていなければfalseを返す。

◆ is_c()

is_c ( )

Cの判定

戻り値
trueを返す。

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