Remove meta.transform duplicating Phobos

This commit is contained in:
2025-08-24 13:01:12 +02:00
parent 1857d59375
commit 260b131222
23 changed files with 25 additions and 1904 deletions

View File

@@ -90,8 +90,8 @@ struct WithLvalueElements
*/
mixin template InputRangeStub(E = int)
{
import std.traits : hasUDA, getUDAs;
import tanya.meta.metafunction : Alias;
import tanya.meta.trait : evalUDA, getUDAs, hasUDA;
/*
* Aliases for the attribute lookups to access them faster
@@ -113,7 +113,7 @@ mixin template InputRangeStub(E = int)
}
else static if (Length.length != 0)
{
private enum size_t count = evalUDA!(Length[0]).length;
private enum size_t count = Length[0]().length;
static assert (!infinite,
"Range cannot have length and be infinite at the same time");
@@ -372,7 +372,7 @@ struct Hashable
*/
mixin template StructStub()
{
import tanya.meta.trait : evalUDA, getUDAs, hasUDA;
import std.traits : hasUDA, getUDAs;
static if (hasUDA!(typeof(this), NonCopyable))
{
@@ -384,7 +384,7 @@ mixin template StructStub()
{
size_t toHash() const @nogc nothrow pure @safe
{
return evalUDA!(Hashable[0]).hash;
return Hashable[0]().hash;
}
}