# HG changeset patch # User Kazuma # Date 1476280574 -32400 # Node ID d132d442dc3421cc8648807227c08a88569f2d6b # Parent 02b2ab7bffe66052478baae169a76409ab085d59 List fix and Code delete diff -r 02b2ab7bffe6 -r d132d442dc34 src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle/data/list/List.cs --- a/src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle/data/list/List.cs Tue Sep 27 18:36:05 2016 +0900 +++ b/src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle/data/list/List.cs Wed Oct 12 22:56:14 2016 +0900 @@ -55,8 +55,7 @@ public IEnumerator iterator() { Node currentNode = head.getNext(); - while (currentNode.getAttribute() != null) { - Debug.Log (currentNode.getAttribute ().ToString()); + while (currentNode != null) { yield return (T)currentNode.getAttribute(); currentNode = currentNode.getNext (); } @@ -109,12 +108,6 @@ return head.length(); } - public string toString() { - //IEnumerator iterator = reverseIterator(); - // pathString += ">"; - return "toString"; - } - public List append(List list) { IEnumerator iterator = list.iterator(); List newList = this; @@ -124,12 +117,4 @@ } return newList; } - -// public IEnumerator iterator() { -// Node currentNode = head.getNext(); -// while (currentNode != null) { -// yield return currentNode; -// currentNode = currentNode.getNext(); -// } -// } } diff -r 02b2ab7bffe6 -r d132d442dc34 src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle/store/impl/DefaultNodePath.cs --- a/src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle/store/impl/DefaultNodePath.cs Tue Sep 27 18:36:05 2016 +0900 +++ b/src/main/csharp/jp.ac.u-ryukyu.ie.cr/jungle/store/impl/DefaultNodePath.cs Wed Oct 12 22:56:14 2016 +0900 @@ -50,7 +50,18 @@ } public override string ToString() { - return path.toString(); + string s = "List <"; + int list_count = this.path.length(); + int count = 0; + foreach(var i in this.path) { + if (count != list_count -1){ + s += i.ToString() + ","; + } else { + s += i.ToString(); + } + count++; + } + return s + ">"; } public int size() { diff -r 02b2ab7bffe6 -r d132d442dc34 src/test/csharp/jp.ac.u-ryukyu.ie.cr/DefaultJungleTreeTest.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/test/csharp/jp.ac.u-ryukyu.ie.cr/DefaultJungleTreeTest.cs Wed Oct 12 22:56:14 2016 +0900 @@ -0,0 +1,50 @@ +using UnityEngine; +using System; +//using System.Diagnostics; + +public class DefaultJungleTreeTest : MonoBehaviour { + // apiの仕様的にこんな感じ + private readonly int COUNT = 500; + + public string key = "moumou"; + private byte[] value = BitConverter.GetBytes(10); + + public void Start () { + Jungle j = new DefaultJungle(null, "hoge", new DefaultTreeEditor(new DefaultTraverser())); + JungleTree t = j.createNewTree("tree"); + + JungleTreeEditor editor1 = t.getTreeEditor(); + + DefaultNodePath root = new DefaultNodePath(); + NodePath path = root.add(0); + // NodePath path = root.pop().rights(); + + print(path.ToString()); + + + float check_time = Time.realtimeSinceStartup; + + for(int i = 0; i < COUNT; i++) { + Either either = editor1.putAttribute(root, i.ToString(), value); + if (either.isA()) { + Debug.Log("失敗しました。"); + } + editor1 = either.b (); + + Either r = editor1.success(); + if (!r.isA()) { + Debug.Log("失敗しました。"); + } + r.b(); + } + check_time = Time.realtimeSinceStartup - check_time; + print ("処理時間 : " + check_time); + + TreeNode node = t.getRootNode(); + for (int i = 0; i < COUNT; i++) { + byte[] v = node.getAttributes ().get (i.ToString()); + print (BitConverter.ToInt32 (v, 0)); + } + } + +} \ No newline at end of file