class NumericParser extends AbstractParser<NumberAST> {
	@Override
	public NumberAST visit(int lineNo, String line) throws ASTParseException {<FILL_FUNCTION_BODY>}
}

		try {
			String content = line.trim();
			NumberAST ast = null;
			if(content.endsWith("F") || content.endsWith("f")) {
				// Float
				FloatParser parser = new FloatParser();
				ast = parser.visit(lineNo, content);
			} else if(content.endsWith("L") || content.endsWith("l") ||
					  content.endsWith("J") || content.endsWith("j")) {
				// Long
				LongParser parser = new LongParser();
				ast = parser.visit(lineNo, content);
			} else if(content.contains(".")) {
				// Double
				DoubleParser parser = new DoubleParser();
				ast = parser.visit(lineNo, content);
			} else {
				// Integer
				IntParser parser = new IntParser();
				ast = parser.visit(lineNo, content);
			}
			return ast;
		} catch(Exception ex) {
			throw new ASTParseException(ex, lineNo, "Bad format for number");
		}
	
<methods>public void <init>() ,public void <init>(AbstractParser#RAW) ,public int getOffset() ,public void setOffset(int) ,public List<java.lang.String> suggest(ParseResult<me.coley.recaf.parse.bytecode.ast.RootAST>, java.lang.String) ,public abstract me.coley.recaf.parse.bytecode.ast.NumberAST visit(int, java.lang.String) throws me.coley.recaf.parse.bytecode.exception.ASTParseException<variables>private int offset,protected final non-sealed AbstractParser#RAW parent