simple syntax issue with template
Lloyd Dupont
ld-REMOVE at galador.net
Mon Jun 13 05:03:27 PDT 2011
I'm trying to create 2 extra method for arrays ("range" would be better,
though I don't quite understand what is a "range")
Although I have some indecipherable (to me) compiler error...
What's wrong with the code below?
==================
import std.algorithm;
public:
void remove(T)(ref T[] array, T element)
{
auto index = array.countUntil!("a == b", T[], T)(array, element);
removeAt(index);
}
void removeAt(T)(ref T[] array, sizediff_t index)
{
if(index < 0 || index >= array.length)
return;
array.replaceInPlace(index, index + 1, []);
}
unittest
{
auto a = [1, 3, 4];
a.remove(3);
assert(a == [1, 4]);
}
======================
More information about the Digitalmars-d-learn
mailing list