1
0

HEX$に桁数指定できるようにした

This commit is contained in:
otya128
2015-08-23 13:03:57 +09:00
parent c712ab8958
commit 009c6deb61
3 changed files with 27 additions and 3 deletions

View File

@@ -365,10 +365,25 @@ class BuiltinFunction
{
return val.to!wstring;
}
static wstring HEX(int val)
static wstring HEX(int val, DefaultValue!(int, false) digits)
{
//ひどい
return val.to!string(16).to!wstring;
import std.format;
if(digits.isDefault)
{
//ひどい
return val.to!string(16).to!wstring;
}
if(digits > 8)
{
throw new OutOfRange();
}
FormatSpec!char f;
f.spec = 'X';
f.flZero = true;
f.width = cast(int)digits;
auto w = appender!wstring();
formatValue(w, val, f);
return cast(immutable)(w.data);
}
static void SPSET(PetitComputer p, int id, int defno)
{