Mercurial > hg > Members > kazuma > jungle-ormapper
view src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/traverser/DefaultEvaluator.java @ 0:44465893e8b8
first Commit
author | Kazuma |
---|---|
date | Wed, 30 Nov 2016 01:47:55 +0900 |
parents | |
children |
line wrap: on
line source
package jp.ac.u_ryukyu.ie.cr.jungle.traverser; import jp.ac.u_ryukyu.ie.cr.jungle.store.NodePath; import jp.ac.u_ryukyu.ie.cr.jungle.util.Pair; import jp.ac.u_ryukyu.ie.cr.jungle.store.impl.TreeNode; public class DefaultEvaluator implements Evaluator { private final NodePath path; public DefaultEvaluator(NodePath _path) { path = _path; } @Override public Evaluation evaluate(TreeNode _current, int _pos) { Pair<Integer, NodePath> pop = path.pop(); int head = pop.left(); if (path.size() == 1) { if (head == _pos) { return new DefaultEvaluation(Result.GOAL, null); } } DefaultEvaluator nextEvaluator; Result result; if (head == _pos) { result = Result.ACCEPT; nextEvaluator = new DefaultEvaluator(pop.right()); } else { result = Result.CONTINUE; nextEvaluator = null; } return new DefaultEvaluation(result, nextEvaluator); } }