![JAR search and dependency download from the Maven repository](/logo.png)
org.ggp.base.util.ruleengine.Translator Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of alloy-ggp-base Show documentation
Show all versions of alloy-ggp-base Show documentation
A modified version of the GGP-Base library for Alloy.
The newest version!
package org.ggp.base.util.ruleengine;
import java.util.List;
import java.util.Set;
import org.ggp.base.util.gdl.grammar.GdlSentence;
import org.ggp.base.util.gdl.grammar.GdlTerm;
import org.ggp.base.util.statemachine.Move;
import com.google.common.collect.Lists;
public interface Translator {
public GdlTerm getGdlMove(M move);
public M getNativeMove(S state, int roleIndex, GdlTerm move);
public Set getGdlState(S state);
public S getNativeState(Set state);
default List getGdlMoves(List moves) {
List results = Lists.newArrayListWithCapacity(moves.size());
for (M move : moves) {
results.add(getGdlMove(move));
}
return results;
}
default List getNativeMoves(S state, List moves) {
List results = Lists.newArrayListWithCapacity(moves.size());
for (int r = 0; r < moves.size(); r++) {
GdlTerm move = moves.get(r);
results.add(getNativeMove(state, r, move));
}
return results;
}
default List getNativeMovesFromMoves(S state, List moves) {
List results = Lists.newArrayListWithCapacity(moves.size());
for (int r = 0; r < moves.size(); r++) {
Move move = moves.get(r);
results.add(getNativeMove(state, r, move.getContents()));
}
return results;
}
default List getMoveObjects(List moves) {
List results = Lists.newArrayListWithCapacity(moves.size());
for (M move : moves) {
results.add(new Move(getGdlMove(move)));
}
return results;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy