// 
// Decompiled by Procyon v0.6.0
// 

package ch.randelshofer.fastdoubleparser;

import java.math.BigDecimal;

public final class JavaBigDecimalParser
{
    private static final JavaBigDecimalFromByteArray BYTE_ARRAY_PARSER;
    private static final JavaBigDecimalFromCharArray CHAR_ARRAY_PARSER;
    private static final JavaBigDecimalFromCharSequence CHAR_SEQUENCE_PARSER;
    
    private JavaBigDecimalParser() {
    }
    
    public static BigDecimal parseBigDecimal(final CharSequence str) throws NumberFormatException {
        return parseBigDecimal(str, 0, str.length());
    }
    
    public static BigDecimal parseBigDecimal(final CharSequence str, final int offset, final int length) throws NumberFormatException {
        return JavaBigDecimalParser.CHAR_SEQUENCE_PARSER.parseBigDecimalString(str, offset, length);
    }
    
    public static BigDecimal parseBigDecimal(final byte[] str) throws NumberFormatException {
        return parseBigDecimal(str, 0, str.length);
    }
    
    public static BigDecimal parseBigDecimal(final byte[] str, final int offset, final int length) throws NumberFormatException {
        return JavaBigDecimalParser.BYTE_ARRAY_PARSER.parseBigDecimalString(str, offset, length);
    }
    
    public static BigDecimal parseBigDecimal(final char[] str) throws NumberFormatException {
        return parseBigDecimal(str, 0, str.length);
    }
    
    public static BigDecimal parseBigDecimal(final char[] str, final int offset, final int length) throws NumberFormatException {
        return JavaBigDecimalParser.CHAR_ARRAY_PARSER.parseBigDecimalString(str, offset, length);
    }
    
    static {
        BYTE_ARRAY_PARSER = new JavaBigDecimalFromByteArray();
        CHAR_ARRAY_PARSER = new JavaBigDecimalFromCharArray();
        CHAR_SEQUENCE_PARSER = new JavaBigDecimalFromCharSequence();
    }
}
