|
PCP: C++ Preprocessor
|
PCP: C++ Preprocessor 固有の名前空間 [詳解]
クラス | |
| class | c11_generator |
| C11用の出力データ生成器 [詳解] | |
| class | c99_generator |
| C99用の出力データ生成器 [詳解] | |
| class | c_generator |
| C90用の出力データ生成器 [詳解] | |
| class | cpp11_generator |
| C++11用の出力データ生成器 [詳解] | |
| class | cpp14_generator |
| C++14用の出力データ生成器 [詳解] | |
| class | cpp17_generator |
| C++17用の出力データ生成器 [詳解] | |
| class | cpp_generator |
| C++98 or 03用の出力データ生成器 [詳解] | |
| class | generator |
| 出力データ生成器の基底クラス [詳解] | |
関数 | |
| array_first_key (array $a) | |
| 配列の先頭要素 [詳解] | |
| autolink ($library) | |
| オートリンク情報の生成 [詳解] | |
| backtrace_message (array $trace, string $message, string $severity="notice") | |
| バックトレースを解析してエラーメッセージを出力する。 [詳解] | |
| char_literal (string $c) | |
| 文字リテラルのコード生成 [詳解] | |
| check (bool $exp, string $message) | |
| 式が偽の場合にエラーを発生させる。 [詳解] | |
| clamp ($value, $min, $max) | |
| 値を範囲内に収める。 [詳解] | |
| clause (... $args) | |
| 句の生成 [詳解] | |
| constant (string $name) | |
| -Dオプションで定義した値の取得 [詳解] | |
| convert_to_encoding (string $data, string $encoding) | |
| 指定したエンコーディングへの変換 [詳解] | |
| convert_to_ucn (string $data) | |
| 国際文字名への変換 [詳解] | |
| convert_to_utf8 (string $data) | |
| UTF-8への変換 [詳解] | |
| convert_to_xdigit (string $data) | |
| 16進エスケープシーケンスへの変換 [詳解] | |
| create_generator (string $language) | |
| 対象言語に応じたジェネレータの生成 [詳解] | |
| depend_on (?string $path) | |
| 依存するソースファイルの設定・取得 [詳解] | |
| enum (array $sig, bool $incomplete=false, bool $omit_semicolon=false) | |
| 列挙体定義の生成 [詳解] | |
| error (string $message) | |
| ユーザーエラーを発生させる。 [詳解] | |
| escape_char (string $c) | |
| 文字のエスケープ [詳解] | |
| fn (array $sig, $mode=false) | |
| 関数頭部の生成 [詳解] | |
| get_error_line (int $line) | |
| エラー発生行番号の取得 [詳解] | |
| get_ini (string $name) | |
| ini情報を取得 [詳解] | |
| get_source_code (string $path) | |
| ソースコードの取得 [詳解] | |
| help () | |
| ヘルプ情報の出力 標準エラーにバージョン情報、コマンドの使い方、オプション一覧を出力する。 | |
| import (string $file) | |
| 前処理対象ソースファイルの取り込み [詳解] | |
| include_guard_macro (string $path) | |
| インクルードガード用のマクロ名 [詳解] | |
| indent (string $code, int $indent_level=1) | |
| コードのインデント [詳解] | |
| is_access_specifier ($arg) | |
| アクセス指定子の判定 [詳解] | |
| is_cplusplus () | |
| C++かどうかの判定 [詳解] | |
| is_debug_mode () | |
| デバッグモードの判定 [詳解] | |
| is_storage_class_specifier ($arg) | |
| 記憶クラス指定子の判定 [詳解] | |
| is_type_qualifier ($arg) | |
| 型修飾子の判定 [詳解] | |
| make_import_path (string $file) | |
| importコマンドで取り込むファイルの絶対パスを生成する。 [詳解] | |
| parse_options (int $argc, array &$argv) | |
| コマンドラインオプションの解析 [詳解] | |
| pascal_case (string $name, bool $camel=false) | |
| パスカルケースの識別子 [詳解] | |
| print_r ($exp, bool $return=false) | |
| print_rの結果を標準エラーに出力 [詳解] | |
| register_defines ($values) | |
| -Dオプションで定義した値の登録 [詳解] | |
| register_option (string $name, $value) | |
| 実行オプションの登録 [詳解] | |
| set_ini (string $name, $value) | |
| ini情報の設定 [詳解] | |
| single_line (string $code) | |
| 複数行のコードを1行化 [詳解] | |
| snake_case (string $name, bool $tolower=true) | |
| スネークケースの識別子 [詳解] | |
| space_to_tab (string $code, int $indent) | |
| 空白を水平タブに変換 [詳解] | |
| start (int $argc, array &$argv) | |
| 前処理の開始 コマンドライン引数で指定した内容に従い、前処理を実行する。 [詳解] | |
| static_assert (string $exp, ?string $message=null) | |
| 静的アサーション [詳解] | |
| string_literal (string $s) | |
| 文字列リテラルのコード生成 [詳解] | |
| struct (array $sig, bool $incomplete=false, bool $omit_semicolon=false) | |
| 構造体定義の生成 [詳解] | |
| tab_to_space (string $code, int $indent) | |
| 水平タブから空白への変換 [詳解] | |
| type ($sig) | |
| 型名の取得 [詳解] | |
| union (array $sig, bool $incomplete=false, bool $omit_semicolon=false) | |
| 共用体定義の生成 [詳解] | |
| var_dump (... $exp) | |
| var_dumpの結果を標準エラーに出力 [詳解] | |
| version () | |
| バージョン情報の出力 標準エラーにバージョン情報、コピーライト情報を出力する。 | |
| warning (string $message) | |
| 警告メッセージを出力する。 [詳解] | |
変数 | |
| const | bool_t = 'bool' |
| 論理値型 | |
| const | char16_t = 'char16_t' |
| 16ビット文字型 | |
| const | char32_t = 'char32_t' |
| 32ビット文字型 | |
| const | char_t = 'char' |
| 文字型 | |
| const | complex32_t = 'float32 complex' |
| 32ビット複素数型 | |
| const | complex64_t = 'float64 complex' |
| 64ビット複素数型 | |
| const | complex_t = 'double complex' |
| 倍精度複素数型 | |
| const | complexf_t = 'float complex' |
| 単精度複素数型 | |
| const | complexl_t = 'long double complex' |
| 拡張倍精度複素数型 | |
| const | deque_t = 'deque' |
| 両端キュー型 | |
| const | double_t = 'double' |
| 倍精度実浮動小数点型 | |
| const | float32_t = 'float32' |
| 32ビット実浮動小数点型 | |
| const | float64_t = 'float64' |
| 64ビット実浮動小数点型 | |
| const | float_t = 'float' |
| 単精度実浮動小数点型 | |
| const | int16_t = 'int16_t' |
| 16ビット整数型 | |
| const | int32_t = 'int32_t' |
| 32ビット整数型 | |
| const | int64_t = 'int64_t' |
| 64ビット整数型 | |
| const | int8_t = 'int8_t' |
| 8ビット整数型 | |
| const | int_t = 'int' |
| 整数型 | |
| const | intmax_t = 'intmax_t' |
| 最長整数型 | |
| const | intptr_t = 'intptr_t' |
| ポインタサイズの整数型 | |
| const | list_t = 'list' |
| 線形リスト型 | |
| const | long_t = 'long' |
| 長整数型 | |
| const | longdouble_t = 'long double' |
| 拡張倍精度実浮動小数点型 | |
| const | longlong_t = 'long long' |
| 倍長整数型 | |
| const | map_t = 'map' |
| マップ型 | |
| const | ptrdiff_t = 'ptrdiff_t' |
| ポインタ差分型 | |
| const | queue_t = 'queue' |
| キュー型 | |
| const | rsize_t = 'rsize_t' |
| 単一のオブジェクトサイズ型 | |
| const | schar_t = 'signed char' |
| 符号付き文字型 | |
| const | short_t = 'short' |
| 短整数型 | |
| const | size_t = 'size_t' |
| オブジェクトサイズ型 | |
| const | stack_t = 'stack' |
| スタック型 | |
| const | string_t = 'string' |
| 文字列型 | |
| const | uchar_t = 'unsigned char' |
| 符号無し文字型 | |
| const | uint16_t = 'uint16_t' |
| 16ビット符号無し整数型 | |
| const | uint32_t = 'uint32_t' |
| 32ビット符号無し整数型 | |
| const | uint64_t = 'uint64_t' |
| 64ビット符号無し整数型 | |
| const | uint8_t = 'uint8_t' |
| 8ビット符号無し整数型 | |
| const | uint_t = 'unsigned int' |
| 符号無し整数型 | |
| const | uintmax_t = 'uintmax_t' |
| 符号無し最長整数型 | |
| const | uintptr_t = 'uintptr_t' |
| ポインタサイズの符号無し整数型 | |
| const | ulong_t = 'unsigned long' |
| 符号無し長整数型 | |
| const | ulonglong_t = 'unsigned long long' |
| 符号無し倍長整数型 | |
| const | ushort_t = 'unsigned short' |
| 符号無し短整数型 | |
| const | vector_t = 'vector' |
| ベクター型 | |
| const | wchar_t = 'wchar_t' |
| ワイド文字型 | |
| const | wint_t = 'wint_t' |
| ワイド整数型 | |
| const | wstring_t = 'wstring' |
| ワイド文字列型 | |
PCP: C++ Preprocessor 固有の名前空間
| pcp\backtrace_message | ( | array | $trace, |
| string | $message, | ||
| string | $severity = "notice" |
||
| ) |
バックトレースを解析してエラーメッセージを出力する。
| [in] | $trace | バックトレース情報 |
| [in] | $message | オリジナルメッセージ |
| [in] | $severity | 深刻度('notice', 'warning', 'error', 'fatal') |
| pcp\create_generator | ( | string | $language | ) |
対象言語に応じたジェネレータの生成
| [in] | $language | 対象言語 |
| pcp\depend_on | ( | ?string | $path | ) |
依存するソースファイルの設定・取得
| [in] | $path | 依存するソースファイルのパス名 |
| pcp\get_error_line | ( | int | $line | ) |
エラー発生行番号の取得
| [in] | $line | トレース情報から得た行番号 |
| pcp\get_source_code | ( | string | $path | ) |
ソースコードの取得
| [in] | $path | ソースコードの絶対パス |
| pcp\is_access_specifier | ( | $arg | ) |
アクセス指定子の判定
| [in] | $arg | 判定対象の文字列 |
| pcp\is_storage_class_specifier | ( | $arg | ) |
記憶クラス指定子の判定
| [in] | $arg | 判定対象の文字列 |
'mutable'や'typedef'に対してもtrueを返すので要注意
| pcp\is_type_qualifier | ( | $arg | ) |
型修飾子の判定
| [in] | $arg | 判定対象の文字列 |
| pcp\make_import_path | ( | string | $file | ) |
importコマンドで取り込むファイルの絶対パスを生成する。
| [in] | $file | importコマンドに指定するファイル名 |
| pcp\parse_options | ( | int | $argc, |
| array & | $argv | ||
| ) |
コマンドラインオプションの解析
| [in] | $argc | コマンドライン引数の数 |
| [in] | $argv | コマンドライン引数の配列 |
| pcp\register_defines | ( | $values | ) |
-Dオプションで定義した値の登録
| [in] | $values | 定義値の配列 |
| pcp\register_option | ( | string | $name, |
| $value | |||
| ) |
実行オプションの登録
| [in] | $name | オプション名 |
| [in] | $value | 値 |
| pcp\start | ( | int | $argc, |
| array & | $argv | ||
| ) |
前処理の開始 コマンドライン引数で指定した内容に従い、前処理を実行する。
| [in] | $argc | コマンドライン引数の数 |
| [in] | $argv | コマンドライン引数の配列 |
1.8.13