add string util
This commit is contained in:
parent
b9b9e9f986
commit
2bff2f8b2f
22
util.d
22
util.d
@ -14,6 +14,8 @@ import std.traits;
|
|||||||
import core.stdc.string : memset;
|
import core.stdc.string : memset;
|
||||||
import core.simd;
|
import core.simd;
|
||||||
|
|
||||||
|
enum bool StringType(T) = (is(T: string) || is(T: u8[]) || is(T: char[]));
|
||||||
|
|
||||||
pragma(inline) void
|
pragma(inline) void
|
||||||
Int3()
|
Int3()
|
||||||
{
|
{
|
||||||
@ -113,6 +115,26 @@ Errf(Args...)(string fmt, Args args)
|
|||||||
Logf!("ERROR", Args)(fmt, args);
|
Logf!("ERROR", Args)(fmt, args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static string
|
||||||
|
AssignStr(T, alias param)() if(StringType!(T))
|
||||||
|
{
|
||||||
|
import std.format : format;
|
||||||
|
|
||||||
|
enum string id = __traits(identifier, p);
|
||||||
|
string result = "";
|
||||||
|
static if(is(T == string))
|
||||||
|
{
|
||||||
|
result = id;
|
||||||
|
}
|
||||||
|
else static if(StringType!(T))
|
||||||
|
{
|
||||||
|
result = format("Str(%s)", id);
|
||||||
|
}
|
||||||
|
else static assert(false, "Unknown type for AssignItem");
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
string
|
string
|
||||||
Scratchf(Args...)(string fmt, Args args)
|
Scratchf(Args...)(string fmt, Args args)
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user