You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Known useless extra allocations (can be removed without any downsides):
std.array:array on SortedRange!(T[]) -> use .release (avoids allocation) or .dup (keeps behavior) instead
std.array:array on result of joiner -> use join
Known extra allocations that might be there for a reason:
any function taking both string and string range - only warning in trivial cases with simple strings as arguments, since other types and ranges may not be evaluatable twice - suggest replacement function (avoids allocation) or use new local 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
The text was updated successfully, but these errors were encountered:
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
The text was updated successfully, but these errors were encountered: