9
* License: Public Domain
11
import std.string, std.stdio, std.compiler, nazo.date, nazo.token;
12
alias std.string.toString toString;
14
string time2str(int t,int k){
15
return zfill(std.string.toString(t),k);
18
///アプリケーションに関する情報(派生して使う)
21
abstract string name();
23
abstract string stableVersion();
25
abstract string homepage();
27
abstract bool isTesting();
29
abstract string license();
31
abstract string creator();
33
abstract string contributor();
35
abstract string enableOptions();
37
final string compiler;
39
final string DLangSpecificationVersion;
41
final string buildFlag;
43
final d_time datetime;
44
final string subversion;
47
return stableVersion()~(isTesting()?"+":"")~(subversion?"("~subversion~")":"");
50
Date* d=getTimeStamp;//new Date;
51
datetime=getCompileTime();//parse(d);
52
// assert(datetime==getCompileTime());
53
DLangSpecificationVersion=.toString(D_major)~"."~.toString(D_minor);
54
this.compiler=std.compiler.name~" v"~.toString(version_major)~"."~.toString(version_minor);
55
//XXX ハック。普通の手段でしたいけど無理?
57
this.buildFlag="Debug";
59
this.buildFlag="Release";
60
assert((this.buildFlag="")=="");
63
this.subversion=dumpDate(d);//dumpDate(datetime);