/** * Tests if the {@code input} can be successfully parsed. */ public boolean accept(String input) { return parse(input).isSuccess(); }
@Override public Result parseOn(Context context) { Result result = null; for (Parser parser : parsers) { result = parser.parseOn(context); if (result.isSuccess()) { return result; } } return result; }
/** * Tests if the {@code input} can be successfully parsed. */ public boolean accept(String input) { return parse(input).isSuccess(); }
@Override public Result parseOn(Context context) { Result result = null; for (Parser parser : parsers) { result = parser.parseOn(context); if (result.isSuccess()) { return result; } } return result; }
private Result consume(Parser parser, Context context) { Result result = parser.parseOn(context); while (result.isSuccess()) { result = parser.parseOn(result); } return result; }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { return result; } else { return context.success(otherwise); } }
private Result consume(Parser parser, Context context) { Result result = parser.parseOn(context); while (result.isSuccess()) { result = parser.parseOn(result); } return result; }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { return result; } else { return context.success(otherwise); } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { return result.success(function.apply(result.get())); } else { return result; } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { return result.success(function.apply(result.get())); } else { return result; } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { return context.success(result.get()); } else { return result; } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { return context.success(result.get()); } else { return result; } }
if (stop.isSuccess()) { return contexts.get(contexts.size() - 1).success(elements);
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { String flattened = context.getBuffer() .substring(context.getPosition(), result.getPosition()); return result.success(flattened); } else { return result; } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { String flattened = context.getBuffer() .substring(context.getPosition(), result.getPosition()); return result.success(flattened); } else { return result; } }
} else if (value == '&') { Result result = ENTITY.parseOn(context.success(null, position)); if (result.isSuccess() && result.get() != null) { output.append(input, start, position); output.append((char) result.get());
@Override public Result parseOn(Context context) { Context current = context; List<Object> elements = new ArrayList<>(); while (elements.size() < min) { Result result = delegate.parseOn(current); if (result.isFailure()) { return result; } elements.add(result.get()); current = result; } while (true) { Result stop = limit.parseOn(current); if (stop.isSuccess()) { return current.success(elements); } else { if (max != UNBOUNDED && elements.size() >= max) { return stop; } Result result = delegate.parseOn(current); if (result.isFailure()) { return stop; } elements.add(result.get()); current = result; } } }
@Override public Result parseOn(Context context) { Context current = context; List<Object> elements = new ArrayList<>(); while (elements.size() < min) { Result result = delegate.parseOn(current); if (result.isFailure()) { return result; } elements.add(result.get()); current = result; } while (true) { Result stop = limit.parseOn(current); if (stop.isSuccess()) { return current.success(elements); } else { if (max != UNBOUNDED && elements.size() >= max) { return stop; } Result result = delegate.parseOn(current); if (result.isFailure()) { return stop; } elements.add(result.get()); current = result; } } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { Token token = new Token(context.getBuffer(), context.getPosition(), result.getPosition(), result.get()); return result.success(token); } else { return result; } }
@Override public Result parseOn(Context context) { Result result = delegate.parseOn(context); if (result.isSuccess()) { Token token = new Token(context.getBuffer(), context.getPosition(), result.getPosition(), result.get()); return result.success(token); } else { return result; } }