package jscl.text;
import jscl.math.Generic;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
/**
* User: serso
* Date: 10/27/11
* Time: 2:44 PM
*/
class MinusParser implements Parser<Boolean> {
public static final Parser<Boolean> parser = new MinusParser();
private MinusParser() {
}
static boolean isMinus(char c) {
return c == '-' || c == '−';
}
@Nonnull
public Boolean parse(@Nonnull Parameters p, @Nullable Generic previousSumElement) {
final int pos0 = p.position.intValue();
ParserUtils.skipWhitespaces(p);
final int pos1 = p.position.intValue();
if (pos1 < p.expression.length() && isMinus(p.expression.charAt(pos1))) {
p.position.increment();
return true;
} else {
p.position.setValue(pos0);
return false;
}
}
}