構造体 toppers::itron::include_policyINCLUDE静的APIのためのポリシークラス
[詳細]
#include "toppers/itron/include.hpp"
toppers::itron::include_policyに対する継承グラフ
[凡例]toppers::itron::include_policyのコラボレーション図
[凡例]すべてのメンバ一覧
|
Public 型 |
enum | { use_id_ = 0
} |
| specified_object<Plociy> クラスが要求する Policy::use_id_ 定数 [詳細]
|
Static Public メソッド |
static bool | generate_kernel_cfg (const kernel_cfg &cfg, std::ostream &ostr) |
| specified_object<Plociy> クラスが要求する Policy::generate_kernel_cfg 関数
|
static bool | generate_kernel_id (const kernel_id &, std::ostream &) |
| kernel_id.h への出力は行わない
|
static bool | verify (const static_api &api, kernel_object &obj) |
| specified_object<Plociy> クラスが要求する Policy::verify 関数
|
Static Public 変数 |
static const char | name_ [] = "include" |
static const char *const | apis_ [] = { "INCLUDE", 0 } |
static const char *const | params_ [] = { "path", 0, } |
説明
INCLUDE静的APIのためのポリシークラス
- 参照:
- specified_object, include
include.hpp の 62 行で定義されています。
列挙型
関数
bool toppers::itron::include_policy::generate_kernel_cfg |
( |
const kernel_cfg & |
cfg, |
|
|
std::ostream & |
ostr |
|
) |
[static] |
|
|
specified_object<Plociy> クラスが要求する Policy::generate_kernel_cfg 関数
- 引数:
-
| cfg | kernel_cfg.c 生成情報 |
| ostr | 出力ストリーム |
- 戻り値:
- 生成に成功すれば true を返す
include.cpp の 54 行で定義されています。
参照先 toppers::kernel_cfg::get_inib_array(). 00055 {
00056 using boost::format;
00057 typedef kernel_cfg::inib_array::const_iterator const_iterator;
00058
00059 const kernel_cfg::inib_array* pinibs = cfg.get_inib_array( "include" );
00060 if ( pinibs == 0 )
00061 {
00062 static const kernel_cfg::inib_array dummy;
00063 pinibs = &dummy;
00064 }
00065
00066 ostr << "\t/* User specified include files */\n\n";
00067 for ( const_iterator iter( pinibs->begin() ), last( pinibs->end() ); iter != last; ++iter )
00068 {
00069 std::string path( ( *iter )->get( "path" ) );
00070 ostr << format( "#include %1%\n" ) % path;
00071 }
00072 ostr << '\n';
00073
00074 return true;
00075 }
関数の呼び出しグラフ:
|
bool toppers::itron::include_policy::generate_kernel_id |
( |
const kernel_id & |
, |
|
|
std::ostream & |
|
|
) |
[static] |
|
|
kernel_id.h への出力は行わない
- 戻り値:
- 常に true を返す
include.cpp の 81 行で定義されています。 00082 {
00083 return true;
00084 }
|
|
specified_object<Plociy> クラスが要求する Policy::verify 関数
- 引数:
-
| api | 解析対象の静的API情報 |
| obj | カーネルオブジェクト情報 |
- 戻り値:
- 判定結果が正常であれば true を返す。
toppers::itron::kernel_object_policy_baseを再定義しています。
include.cpp の 92 行で定義されています。
参照先 _・toppers::error()・toppers::itron::kernel_object::get()・toppers::itron::static_api::line(). 00093 {
00094 std::string path( obj.get( "path" ) );
00095 std::string::size_type size = path.size();
00096
00097 if ( path[0] != '\"' || path[size-1] != '\"' )
00098 {
00099 static_api::line_type line( api.line() );
00100 error( line.file_.native_file_string(), line.line_, _( "`INCLUDE\' expects string literal" ) );
00101 return false;
00102 }
00103 path = path.substr( 1, size-2 );
00104
00105
00106 for ( std::string::size_type pos = path.find( "\\\"" ); pos != std::string::npos; pos = path.find( "\\\"", pos+1 ) )
00107 {
00108 path.replace( pos, 2, "\"" );
00109 }
00110
00111 obj.set( "path", path );
00112 return true;
00113 }
関数の呼び出しグラフ:
|
この構造体の説明は次のファイルから生成されました:
Copyright © 2006 by TAKAGI Nobuhisa.
このページは Wed Apr 12 16:32:05 2006 に Doxygen によって生成されました。
|
|