Mercurial > hg > Members > tatsuki > bench > jungle-core
comparison src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/transaction/DefaultTreeNodeChildren.java @ 97:a1e20a440ddd
add BruteForceTraverser
author | one |
---|---|
date | Mon, 08 Sep 2014 17:03:08 +0900 |
parents | 4c6b915302a8 |
children | ef183969bf31 |
comparison
equal
deleted
inserted
replaced
96:bd82c20a6da0 | 97:a1e20a440ddd |
---|---|
59 return DefaultEither.newA(NodeEditorError.INDEX_OUT_OF_BOUNDS); | 59 return DefaultEither.newA(NodeEditorError.INDEX_OUT_OF_BOUNDS); |
60 } | 60 } |
61 | 61 |
62 P2<List<TreeNode>,List<TreeNode>> split = children.splitAt(_pos); | 62 P2<List<TreeNode>,List<TreeNode>> split = children.splitAt(_pos); |
63 List<TreeNode> newChildren = split._1().snoc(new DefaultTreeNode()).append(split._2()); | 63 List<TreeNode> newChildren = split._1().snoc(new DefaultTreeNode()).append(split._2()); |
64 OperationLog op = new DefaultOperationLog(); | 64 TreeNode newNode = new DefaultTreeNode(newChildren,attrs); |
65 TreeNode newNode = new DefaultTreeNode(newChildren,attrs,op.add(new AppendChildAtOperation(_pos))); | |
66 | |
67 return DefaultEither.newB(newNode); | 65 return DefaultEither.newB(newNode); |
68 } | 66 } |
69 | 67 |
70 @Override | 68 @Override |
71 public Either<Error,TreeNode> deleteChildAt(int _pos) | 69 public Either<Error,TreeNode> deleteChildAt(int _pos) |
74 return DefaultEither.newA(NodeEditorError.INDEX_OUT_OF_BOUNDS); | 72 return DefaultEither.newA(NodeEditorError.INDEX_OUT_OF_BOUNDS); |
75 } | 73 } |
76 | 74 |
77 P2<List<TreeNode>,List<TreeNode>> split = children.splitAt(_pos); | 75 P2<List<TreeNode>,List<TreeNode>> split = children.splitAt(_pos); |
78 List<TreeNode> newChildren = split._1().append(split._2().tail()); | 76 List<TreeNode> newChildren = split._1().append(split._2().tail()); |
79 | 77 TreeNode newNode = new DefaultTreeNode(newChildren,attrs); |
80 OperationLog op = new DefaultOperationLog(); | |
81 TreeNode newNode = new DefaultTreeNode(newChildren,attrs,op.add(new DeleteChildAtOperation(_pos))); | |
82 | 78 |
83 return DefaultEither.newB(newNode); | 79 return DefaultEither.newB(newNode); |
84 } | 80 } |
85 | 81 |
86 @Override | 82 @Override |