Mercurial > hg > Members > tatsuki > bench > jungle-core
comparison src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/traverser/DefaultTraverser.java @ 175:e26462a38ce0
add push pop
author | tatsuki |
---|---|
date | Fri, 06 Mar 2015 10:44:50 +0900 |
parents | fb1dc448ac8c |
children |
comparison
equal
deleted
inserted
replaced
173:f26535302c96 | 175:e26462a38ce0 |
---|---|
19 @Override | 19 @Override |
20 public Iterator<TreeNode> iterator(){ | 20 public Iterator<TreeNode> iterator(){ |
21 List<TreeNode> list = List.nil(); | 21 List<TreeNode> list = List.nil(); |
22 return list.cons(_root).iterator(); | 22 return list.cons(_root).iterator(); |
23 } | 23 } |
24 | |
24 @Override | 25 @Override |
25 public int size(){ | 26 public int size(){ |
26 return 1; | 27 return 1; |
27 } | 28 } |
29 | |
28 @Override | 30 @Override |
29 public Either<Error,TreeNode> at(int _pos){ | 31 public Either<Error,TreeNode> at(int _pos){ |
30 if(_pos != 0){ | 32 if(_pos != 0){ |
31 return DefaultEither.newA(NodeEditorError.INDEX_OUT_OF_BOUNDS); | 33 return DefaultEither.newA(NodeEditorError.INDEX_OUT_OF_BOUNDS); |
32 } | 34 } |
36 | 38 |
37 //Children<T> chs = _root.getChildren(); | 39 //Children<T> chs = _root.getChildren(); |
38 Children chs = wrapper; | 40 Children chs = wrapper; |
39 | 41 |
40 Either<Error,List<Direction<TreeNode>>> ret = _traverse(chs,_evaluator,-1); | 42 Either<Error,List<Direction<TreeNode>>> ret = _traverse(chs,_evaluator,-1); |
43 | |
41 if(ret.isA()){ | 44 if(ret.isA()){ |
42 return DefaultEither.newA(ret.a()); | 45 return DefaultEither.newA(ret.a()); |
43 } | 46 } |
44 | 47 |
45 List<Direction<TreeNode>> list = ret.b(); | 48 List<Direction<TreeNode>> list = ret.b(); |