Rename SList front property into insertFront
This commit is contained in:
parent
dd3becf6b7
commit
7c36dbb8f0
@ -55,10 +55,9 @@ class SList(T)
|
|||||||
unittest
|
unittest
|
||||||
{
|
{
|
||||||
auto l = make!(SList!int)(theAllocator);
|
auto l = make!(SList!int)(theAllocator);
|
||||||
int[2] values = [8, 5];
|
|
||||||
|
|
||||||
l.front = values[0];
|
l.insertFront(8);
|
||||||
l.front = values[1];
|
l.insertFront(5);
|
||||||
l.clear();
|
l.clear();
|
||||||
assert(l.empty);
|
assert(l.empty);
|
||||||
|
|
||||||
@ -84,7 +83,7 @@ class SList(T)
|
|||||||
* Params:
|
* Params:
|
||||||
* x = New element.
|
* x = New element.
|
||||||
*/
|
*/
|
||||||
@property void front(T x)
|
void insertFront(T x)
|
||||||
{
|
{
|
||||||
Entry* temp = make!Entry(allocator);
|
Entry* temp = make!Entry(allocator);
|
||||||
|
|
||||||
@ -93,47 +92,18 @@ class SList(T)
|
|||||||
first.next = temp;
|
first.next = temp;
|
||||||
}
|
}
|
||||||
|
|
||||||
///
|
/// Ditto.
|
||||||
unittest
|
alias insert = insertFront;
|
||||||
{
|
|
||||||
auto l = make!(SList!int)(theAllocator);
|
|
||||||
int[2] values = [8, 9];
|
|
||||||
|
|
||||||
l.front = values[0];
|
|
||||||
assert(l.front == values[0]);
|
|
||||||
l.front = values[1];
|
|
||||||
assert(l.front == values[1]);
|
|
||||||
|
|
||||||
dispose(theAllocator, l);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Inserts a new element at the beginning.
|
|
||||||
*
|
|
||||||
* Params:
|
|
||||||
* x = New element.
|
|
||||||
*
|
|
||||||
* Returns: $(D_KEYWORD this).
|
|
||||||
*/
|
|
||||||
typeof(this) opOpAssign(string Op)(ref T x)
|
|
||||||
if (Op == "~")
|
|
||||||
{
|
|
||||||
front = x;
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
///
|
///
|
||||||
unittest
|
unittest
|
||||||
{
|
{
|
||||||
auto l = make!(SList!int)(theAllocator);
|
auto l = make!(SList!int)(theAllocator);
|
||||||
int value = 5;
|
|
||||||
|
|
||||||
assert(l.empty);
|
l.insertFront(8);
|
||||||
|
assert(l.front == 8);
|
||||||
l ~= value;
|
l.insertFront(9);
|
||||||
|
assert(l.front == 9);
|
||||||
assert(l.front == value);
|
|
||||||
assert(!l.empty);
|
|
||||||
|
|
||||||
dispose(theAllocator, l);
|
dispose(theAllocator, l);
|
||||||
}
|
}
|
||||||
@ -164,20 +134,19 @@ class SList(T)
|
|||||||
dispose(allocator, first.next);
|
dispose(allocator, first.next);
|
||||||
first.next = n;
|
first.next = n;
|
||||||
|
|
||||||
return content;
|
return content;
|
||||||
}
|
}
|
||||||
|
|
||||||
///
|
///
|
||||||
unittest
|
unittest
|
||||||
{
|
{
|
||||||
auto l = make!(SList!int)(theAllocator);
|
auto l = make!(SList!int)(theAllocator);
|
||||||
int[2] values = [8, 9];
|
|
||||||
|
|
||||||
l.front = values[0];
|
l.insertFront(8);
|
||||||
l.front = values[1];
|
l.insertFront(9);
|
||||||
assert(l.front == values[1]);
|
assert(l.front == 9);
|
||||||
l.popFront();
|
l.popFront();
|
||||||
assert(l.front == values[0]);
|
assert(l.front == 8);
|
||||||
|
|
||||||
dispose(theAllocator, l);
|
dispose(theAllocator, l);
|
||||||
}
|
}
|
||||||
@ -211,11 +180,10 @@ class SList(T)
|
|||||||
unittest
|
unittest
|
||||||
{
|
{
|
||||||
auto l = make!(SList!int)(theAllocator);
|
auto l = make!(SList!int)(theAllocator);
|
||||||
int[3] values = [8, 5, 4];
|
|
||||||
|
|
||||||
l.front = values[0];
|
l.insertFront(8);
|
||||||
l.front = values[1];
|
l.insertFront(5);
|
||||||
l.front = values[2];
|
l.insertFront(4);
|
||||||
assert(l.removeFront(0) == 0);
|
assert(l.removeFront(0) == 0);
|
||||||
assert(l.removeFront(2) == 2);
|
assert(l.removeFront(2) == 2);
|
||||||
assert(l.removeFront(3) == 1);
|
assert(l.removeFront(3) == 1);
|
||||||
@ -247,25 +215,6 @@ class SList(T)
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
///
|
|
||||||
unittest
|
|
||||||
{
|
|
||||||
auto l = make!(SList!int)(theAllocator);
|
|
||||||
int[3] values = [5, 4, 9];
|
|
||||||
|
|
||||||
l.front = values[0];
|
|
||||||
l.front = values[1];
|
|
||||||
l.front = values[2];
|
|
||||||
foreach (i, e; l)
|
|
||||||
{
|
|
||||||
assert(i != 0 || e == values[2]);
|
|
||||||
assert(i != 1 || e == values[1]);
|
|
||||||
assert(i != 2 || e == values[0]);
|
|
||||||
}
|
|
||||||
|
|
||||||
dispose(theAllocator, l);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Ditto.
|
/// Ditto.
|
||||||
int opApply(scope int delegate(ref T) dg)
|
int opApply(scope int delegate(ref T) dg)
|
||||||
{
|
{
|
||||||
@ -287,20 +236,16 @@ class SList(T)
|
|||||||
unittest
|
unittest
|
||||||
{
|
{
|
||||||
auto l = make!(SList!int)(theAllocator);
|
auto l = make!(SList!int)(theAllocator);
|
||||||
int[3] values = [5, 4, 9];
|
|
||||||
size_t i;
|
|
||||||
|
|
||||||
l.front = values[0];
|
l.insertFront(5);
|
||||||
l.front = values[1];
|
l.insertFront(4);
|
||||||
l.front = values[2];
|
l.insertFront(9);
|
||||||
foreach (e; l)
|
foreach (i, e; l)
|
||||||
{
|
{
|
||||||
assert(i != 0 || e == values[2]);
|
assert(i != 0 || e == 9);
|
||||||
assert(i != 1 || e == values[1]);
|
assert(i != 1 || e == 4);
|
||||||
assert(i != 2 || e == values[0]);
|
assert(i != 2 || e == 5);
|
||||||
++i;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
dispose(theAllocator, l);
|
dispose(theAllocator, l);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -325,6 +270,26 @@ class SList(T)
|
|||||||
|
|
||||||
///
|
///
|
||||||
unittest
|
unittest
|
||||||
|
{
|
||||||
|
auto l = make!(SList!int)(theAllocator);
|
||||||
|
size_t i;
|
||||||
|
|
||||||
|
l.insertFront(5);
|
||||||
|
l.insertFront(4);
|
||||||
|
l.insertFront(9);
|
||||||
|
foreach (e; l)
|
||||||
|
{
|
||||||
|
assert(i != 0 || e == 9);
|
||||||
|
assert(i != 1 || e == 4);
|
||||||
|
assert(i != 2 || e == 5);
|
||||||
|
++i;
|
||||||
|
}
|
||||||
|
assert(i == 3);
|
||||||
|
|
||||||
|
dispose(theAllocator, l);
|
||||||
|
}
|
||||||
|
|
||||||
|
private unittest
|
||||||
{
|
{
|
||||||
interface Stuff
|
interface Stuff
|
||||||
{
|
{
|
||||||
|
@ -43,7 +43,7 @@ class Vector(T)
|
|||||||
|
|
||||||
private alias ElementType = typeof(data[0].vector[0]);
|
private alias ElementType = typeof(data[0].vector[0]);
|
||||||
|
|
||||||
private this(V data, in size_t a, in size_t b)
|
protected this(V data, in size_t a, in size_t b)
|
||||||
{
|
{
|
||||||
this.data = data;
|
this.data = data;
|
||||||
start = a;
|
start = a;
|
||||||
@ -709,9 +709,11 @@ class Vector(T)
|
|||||||
theAllocator.dispose(v1);
|
theAllocator.dispose(v1);
|
||||||
}
|
}
|
||||||
|
|
||||||
private T[] vector;
|
/// Internal representation.
|
||||||
|
protected T[] vector;
|
||||||
|
|
||||||
private IAllocator allocator;
|
/// The allocator.
|
||||||
|
protected IAllocator allocator;
|
||||||
}
|
}
|
||||||
|
|
||||||
///
|
///
|
||||||
|
Loading…
x
Reference in New Issue
Block a user