原文在此
還有一篇
還有這裡
還有這裡都可以看看.元程式設計相關的.
我們想要:
enum sql = `
create table person (
id integer not null
, name text,
birthday date );
`;/+ 通過上面生成下面:
class
person}+
/
這樣:
class
objectimpl
(some_arguments)
mixin
("alias "
~ some_name ~
" objectimpl!(whatever, args);"
);
如下:
struct 結查列
struct 結查表
結查表 解析結查語句(string sql)
//這是解析sql剩下的
//先分解,外掛程式模板宣告+取串
mixin template 結查表物件(string sql)
else
static
if(結查型別 ==
"text"
) alias 結查變數型別 = string;
else
static
assert(0
,"未知型別"
~ 結查型別);}
//變數型別轉換
// 使用者定義反射
struct 結查列
//重要的是結查表.
// 生成變數,一次乙個,用小串外掛程式
mixin template 結查變數(結查列[
]列)//一堆變數,這裡沒有定義結果列第乙個變數.
// 普通宣告加變數外掛程式
class 我們結查表物件
//檢視}}
// 串外掛程式中再用別名來取名字
mixin
("alias "
~ 解析結查語句(sql)
.name ~
" = 我們結查表物件;");
//用別名來定義我們的類.
}//混合所有,搞定
mixin 結查表物件!
(sql)
;//@1
void
main()
幾行串外掛程式
,搞定一切. d外掛程式混入
inte ce i mixin template idefaults 中預設 override string somethingelse 過載的仍然是本地的函式 外掛程式模板引進包裝函式和快取變數至每個例項 不能複製靜態本地變數 外掛程式模板和結構區別在域.結構域在模組,外掛程式在定義點 使用點 c...
jQuery外掛程式示例筆記
封裝物件方法的外掛程式 將物件方法封裝起來,用於對通過選擇器獲取的jquery物件進行操作。注意,為了更好的相容性開始前有個分號 function jquery 這裡就將jquery作為實參傳遞給匿名函式了封裝全域性函式的外掛程式 可以將獨立的函式加到jquery命名空間之下。選擇器外掛程式 擴充自...
Wordpress 外掛程式示例之一
這個 wp 外掛程式,除過能夠在外掛程式管理面板管理外 可以被開啟和禁用 還能夠在 設定 選單下對外掛程式進行配置,使外掛程式的功能可以得到擴充套件。本外掛程式,可以實現對部落格文章中的任意字串進行替換。以下 中,why100000 keyword 和 why100000 replace 作為選項文...