void advance() { if (depth >= 0) { int npos = stackpos[depth] + 1; if (npos < stack[depth].Length) { stackpos[depth] = npos; BasicNode elem = stack[depth][npos]; if (elem is SNode <K, V> ) { current = (SNode <K, V>)elem; } else if (elem is INode <K, V> ) { readin((INode <K, V>)elem); } } else { depth -= 1; advance(); } } else { current = null; } }
public void TestSetKVNodeValue() { KVNode testNode4 = new KVNode("cat", "dog"); testNode4.Value = "NewValue"; Assert.Equal("NewValue", testNode4.Value); }
public void TestSetKVNodeKey() { KVNode testNode2 = new KVNode("cat", "dog"); testNode2.Key = "NewKey"; Assert.Equal("NewKey", testNode2.Key); }
private void readin(INode <K, V> _in) { MainNode <K, V> m = _in.gcasRead(ct); if (m is CNode <K, V> ) { CNode <K, V> cn = (CNode <K, V>)m; depth += 1; stack[depth] = cn.array; stackpos[depth] = -1; advance(); } else if (m is TNode <K, V> ) { current = (TNode <K, V>)m; } else if (m is LNode <K, V> ) { subiter = ((LNode <K, V>)m).listmap.iterator(); checkSubiter(); } else if (m == null) { current = null; } }
public void TestGetCurrentLL() { KVNode testNode11 = new KVNode("cat", "dog"); KVNodeLinkList testKVLL3 = new KVNodeLinkList(); testKVLL3.Current = testNode11; Assert.Equal(testNode11, testKVLL3.Current); }
public void TestSetHeadLL() { KVNode testNode10 = new KVNode("cat", "dog"); KVNodeLinkList testKVLL2 = new KVNodeLinkList(); testKVLL2.Head = testNode10; Assert.Equal(testNode10, testKVLL2.Head); }
public void TestGetKVNodeNext() { KVNode testNode5 = new KVNode("cat", "dog"); KVNode testNode6 = new KVNode("red", "blue"); testNode5.Next = testNode6; Assert.Equal(testNode6, testNode5.Next); }
public void TestSetKVNodeNext() { KVNode testNode7 = new KVNode("cat", "dog"); KVNode testNode8 = new KVNode("red", "blue"); KVNode testNode9 = new KVNode("apple", "banana"); testNode7.Next = testNode8; testNode7.Next = testNode9; Assert.Equal(testNode9, testNode7.Next); }
public void TestLLAppend() { KVNodeLinkList testKVLL8 = new KVNodeLinkList(); testKVLL8.Insert("cat", "dog"); KVNode testNode14 = new KVNode("apple", "pear"); testKVLL8.Append(testNode14); Assert.Equal("apple", testKVLL8.Head.Next.Key); }
public void TestSetCurrentLL() { KVNode testNode12 = new KVNode("cat", "dog"); KVNode testNode13 = new KVNode("cat", "dog"); KVNodeLinkList testKVLL4 = new KVNodeLinkList(); testKVLL4.Current = testNode12; testKVLL4.Current = testNode13; Assert.Equal(testNode13, testKVLL4.Current); }
//methods /// <summary> /// Adds a new key value pair to hash table /// </summary> /// <param name="key">the key</param> /// <param name="value">the value</param> public void AddToHashTable(string key, string value) { int hashIndex = Hash(key); if (HashTableArray[hashIndex] == null) { KVNodeLinkList tempLL = new KVNodeLinkList(); HashTableArray[hashIndex] = tempLL; HashTableArray[hashIndex].Insert(key, value); } else { KVNode newNode = new KVNode(key, value); HashTableArray[hashIndex].Append(newNode); } }
public void TestGetKVNodeValue() { KVNode testNode3 = new KVNode("cat", "dog"); Assert.Equal("dog", testNode3.Value); }
public void TestGetKVNodeKey() { KVNode testNode1 = new KVNode("cat", "dog"); Assert.Equal("cat", testNode1.Key); }