Mercurial > hg > Members > shoshi > jungle > jungle-core
view src/main/java/jp/ac/u_ryukyu/ie/cr/jungle/traverser/DefaultEvaluator.java @ 365:f69f4be12612 default tip
fix
author | suruga |
---|---|
date | Fri, 09 Feb 2018 19:48:22 +0900 |
parents | b3a04bc21b23 |
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.NodePath; import jp.ac.u_ryukyu.ie.cr.jungle.util.Pair; import jp.ac.u_ryukyu.ie.cr.jungle.transaction.node.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); } }