}
if (!owner.lame)
newNode(parent, pending, state, fromEmptyReduction);
}
if (!owner.lame)
newNode(parent, pending, state, fromEmptyReduction);
if (r.owner().hated == null) return;
// remember that dead states are still allowed to shift -- just not allowed to reduce
boolean reset = false;
for(Sequence seq : r.owner().hated) {
if (performed.contains(p,seq)) {
if (r.owner().hated == null) return;
// remember that dead states are still allowed to shift -- just not allowed to reduce
boolean reset = false;
for(Sequence seq : r.owner().hated) {
if (performed.contains(p,seq)) {
class Reset extends RuntimeException { }
/** perform all shift operations, adding promoted nodes to <tt>next</tt> */
class Reset extends RuntimeException { }
/** perform all shift operations, adding promoted nodes to <tt>next</tt> */