TypeScript/tests/baselines/reference/genericClassWithStaticFactory.symbols
2015-04-15 16:44:20 -07:00

548 lines
29 KiB
Text

=== tests/cases/compiler/genericClassWithStaticFactory.ts ===
module Editor {
>Editor : Symbol(Editor, Decl(genericClassWithStaticFactory.ts, 0, 0))
export class List<T> {
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
public next: List<T>;
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
public prev: List<T>;
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
private listFactory: ListFactory<T>;
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>ListFactory : Symbol(ListFactory, Decl(genericClassWithStaticFactory.ts, 106, 5))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
constructor(public isHead: boolean, public data: T) {
>isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 7, 43))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
this.listFactory = new ListFactory<T>();
>this.listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>ListFactory : Symbol(ListFactory, Decl(genericClassWithStaticFactory.ts, 106, 5))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
}
public add(data: T): List<T> {
>add : Symbol(add, Decl(genericClassWithStaticFactory.ts, 10, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 12, 19))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
var entry = this.listFactory.MakeEntry(data);
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 13, 15))
>this.listFactory.MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>this.listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 12, 19))
this.prev.next = entry;
>this.prev.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 13, 15))
entry.next = this;
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 13, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
entry.prev = this.prev;
>entry.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 13, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
this.prev = entry;
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 13, 15))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 13, 15))
}
public count(): number {
>count : Symbol(count, Decl(genericClassWithStaticFactory.ts, 20, 9))
var entry: List<T>;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 23, 15))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
var i: number;
>i : Symbol(i, Decl(genericClassWithStaticFactory.ts, 24, 15))
entry = this.next;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 23, 15))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
for (i = 0; !(entry.isHead); i++) {
>i : Symbol(i, Decl(genericClassWithStaticFactory.ts, 24, 15))
>entry.isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 23, 15))
>isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>i : Symbol(i, Decl(genericClassWithStaticFactory.ts, 24, 15))
entry = entry.next;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 23, 15))
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 23, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
}
return (i);
>i : Symbol(i, Decl(genericClassWithStaticFactory.ts, 24, 15))
}
public isEmpty(): boolean {
>isEmpty : Symbol(isEmpty, Decl(genericClassWithStaticFactory.ts, 32, 9))
return (this.next == this);
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
}
public first(): T {
>first : Symbol(first, Decl(genericClassWithStaticFactory.ts, 36, 9))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
if (this.isEmpty())
>this.isEmpty : Symbol(isEmpty, Decl(genericClassWithStaticFactory.ts, 32, 9))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>isEmpty : Symbol(isEmpty, Decl(genericClassWithStaticFactory.ts, 32, 9))
{
return this.next.data;
>this.next.data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 7, 43))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 7, 43))
}
else {
return null;
}
}
public pushEntry(entry: List<T>): void {
>pushEntry : Symbol(pushEntry, Decl(genericClassWithStaticFactory.ts, 46, 9))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
entry.isHead = false;
>entry.isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
>isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
entry.next = this.next;
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
entry.prev = this;
>entry.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
this.next = entry;
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
entry.next.prev = entry; // entry.next.prev does not show intellisense, but entry.prev.prev does
>entry.next.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 48, 25))
}
public push(data: T): void {
>push : Symbol(push, Decl(genericClassWithStaticFactory.ts, 54, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 56, 20))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
var entry = this.listFactory.MakeEntry(data);
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
>this.listFactory.MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>this.listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 56, 20))
entry.data = data;
>entry.data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 7, 43))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 7, 43))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 56, 20))
entry.isHead = false;
>entry.isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
>isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
entry.next = this.next;
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
entry.prev = this;
>entry.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
this.next = entry;
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
entry.next.prev = entry; // entry.next.prev does not show intellisense, but entry.prev.prev does
>entry.next.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 57, 15))
}
public popEntry(head: List<T>): List<T> {
>popEntry : Symbol(popEntry, Decl(genericClassWithStaticFactory.ts, 64, 9))
>head : Symbol(head, Decl(genericClassWithStaticFactory.ts, 66, 24))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
if (this.next.isHead) {
>this.next.isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
return null;
}
else {
return this.listFactory.RemoveEntry(this.next);
>this.listFactory.RemoveEntry : Symbol(ListFactory.RemoveEntry, Decl(genericClassWithStaticFactory.ts, 122, 9))
>this.listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>RemoveEntry : Symbol(ListFactory.RemoveEntry, Decl(genericClassWithStaticFactory.ts, 122, 9))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
}
}
public insertEntry(entry: List<T>): List<T> {
>insertEntry : Symbol(insertEntry, Decl(genericClassWithStaticFactory.ts, 73, 9))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
entry.isHead = false;
>entry.isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
>isHead : Symbol(isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
this.prev.next = entry;
>this.prev.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
entry.next = this;
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
entry.prev = this.prev;
>entry.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
this.prev = entry;
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 75, 27))
}
public insertAfter(data: T): List<T> {
>insertAfter : Symbol(insertAfter, Decl(genericClassWithStaticFactory.ts, 82, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 84, 27))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
var entry: List<T> = this.listFactory.MakeEntry(data);
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>this.listFactory.MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>this.listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 84, 27))
entry.next = this.next;
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
entry.prev = this;
>entry.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
this.next = entry;
>this.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
entry.next.prev = entry;// entry.next.prev does not show intellisense, but entry.prev.prev does
>entry.next.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 85, 15))
}
public insertEntryBefore(entry: List<T>): List<T> {
>insertEntryBefore : Symbol(insertEntryBefore, Decl(genericClassWithStaticFactory.ts, 91, 9))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 93, 33))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
this.prev.next = entry;
>this.prev.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 93, 33))
entry.next = this;
>entry.next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 93, 33))
>next : Symbol(next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
entry.prev = this.prev;
>entry.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 93, 33))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
this.prev = entry;
>this.prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>prev : Symbol(prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 93, 33))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 93, 33))
}
public insertBefore(data: T): List<T> {
>insertBefore : Symbol(insertBefore, Decl(genericClassWithStaticFactory.ts, 100, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 102, 28))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 2, 22))
var entry = this.listFactory.MakeEntry(data);
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 103, 15))
>this.listFactory.MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>this.listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>listFactory : Symbol(listFactory, Decl(genericClassWithStaticFactory.ts, 4, 29))
>MakeEntry : Symbol(ListFactory.MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 102, 28))
return this.insertEntryBefore(entry);
>this.insertEntryBefore : Symbol(insertEntryBefore, Decl(genericClassWithStaticFactory.ts, 91, 9))
>this : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>insertEntryBefore : Symbol(insertEntryBefore, Decl(genericClassWithStaticFactory.ts, 91, 9))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 103, 15))
}
}
export class ListFactory<T> {
>ListFactory : Symbol(ListFactory, Decl(genericClassWithStaticFactory.ts, 106, 5))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 108, 29))
public MakeHead<T>(): List<T> {
>MakeHead : Symbol(MakeHead, Decl(genericClassWithStaticFactory.ts, 108, 33))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 110, 24))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 110, 24))
var entry: List<T> = new List<T>(true, null);
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 111, 15))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 110, 24))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 110, 24))
entry.prev = entry;
>entry.prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 111, 15))
>prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 111, 15))
entry.next = entry;
>entry.next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 111, 15))
>next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 111, 15))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 111, 15))
}
public MakeEntry<T>(data: T): List<T> {
>MakeEntry : Symbol(MakeEntry, Decl(genericClassWithStaticFactory.ts, 115, 9))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 117, 25))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 117, 28))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 117, 25))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 117, 25))
var entry: List<T> = new List<T>(false, data);
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 118, 15))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 117, 25))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 117, 25))
>data : Symbol(data, Decl(genericClassWithStaticFactory.ts, 117, 28))
entry.prev = entry;
>entry.prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 118, 15))
>prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 118, 15))
entry.next = entry;
>entry.next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 118, 15))
>next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 118, 15))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 118, 15))
}
public RemoveEntry<T>(entry: List<T>): List<T> {
>RemoveEntry : Symbol(RemoveEntry, Decl(genericClassWithStaticFactory.ts, 122, 9))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 124, 27))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 124, 27))
>List : Symbol(List, Decl(genericClassWithStaticFactory.ts, 0, 15))
>T : Symbol(T, Decl(genericClassWithStaticFactory.ts, 124, 27))
if (entry == null) {
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
return null;
}
else if (entry.isHead) {
>entry.isHead : Symbol(List.isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
>isHead : Symbol(List.isHead, Decl(genericClassWithStaticFactory.ts, 7, 20))
// Can't remove the head of a list!
return null;
}
else {
entry.next.prev = entry.prev;
>entry.next.prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry.next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
>next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry.prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
>prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
entry.prev.next = entry.next;
>entry.prev.next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry.prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
>prev : Symbol(List.prev, Decl(genericClassWithStaticFactory.ts, 3, 29))
>next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry.next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
>next : Symbol(List.next, Decl(genericClassWithStaticFactory.ts, 2, 26))
return entry;
>entry : Symbol(entry, Decl(genericClassWithStaticFactory.ts, 124, 30))
}
}
}
}