Open WebFreak001 opened 10 months ago
cc @ljmf00 this might actually be something that should be trivial to implement in ldclint, where you could even accurately check for InputRange/ForwardRange and actually also warn on cases that D-Scanner wouldn't easily be able to tell apart and would just leave out to avoid false positives.
Although we are likely still going to implement this in D-Scanner anyway, with its not full accurate, but much less RAM using dsymbol index, while ldclint isn't fully ready to be used yet
Known useless extra allocations (can be removed without any downsides):
std.array:array
onSortedRange!(T[])
-> use.release
(avoids allocation) or.dup
(keeps behavior) insteadstd.array:array
on result ofjoiner
-> usejoin
Known extra allocations that might be there for a reason:
string
variable (keeps behavior)std.path : buildPath
->chainPath
std.utf : toUTF8
->byUTF!char
std.utf : toUTF16
->byUTF!wchar
std.utf : toUTF32
->byUTF!dchar
std.uni : toLower
->asLowerCase
std.uni : toUpper
->asUpperCase