diff src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/DefaultNode.java @ 27:5f4172d6fb8b

clean up
author Shoshi TAMAKI
date Mon, 14 Jan 2013 04:07:15 +0900
parents 1b448f9249ee
children f4be99977be2
line wrap: on
line diff
--- a/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/DefaultNode.java	Mon Jan 14 03:22:59 2013 +0900
+++ b/src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/DefaultNode.java	Mon Jan 14 04:07:15 2013 +0900
@@ -1,12 +1,17 @@
 package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl;
 
 import java.nio.ByteBuffer;
+import java.util.Iterator;
+
 import fj.Ord;
 import fj.data.List;
 import fj.data.TreeMap;
+import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.core.Node;
 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableAttributes;
 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableChildren;
 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.trasnformer.EditableNode;
+import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.traverser.Children;
+import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.IterableWrapper;
 
 public class DefaultNode implements EditableNode
 {
@@ -38,4 +43,22 @@
 	{
 		return new DefaultAttributes(children,attrs);
 	}
+
+	@Override
+	public Children<Node> children()
+	{
+		return new Children<Node>(){
+			@Override
+			public Iterator<Node> iterator()
+			{
+				return (new IterableWrapper<Node>(children)).iterator();
+			}
+
+			@Override
+			public int size()
+			{
+				return children.length();
+			}
+		};
+	}
 }