12d2bb24f747c65578da13d5b13b82f0669690461Fredrik Roubert// © 2016 and later: Unicode, Inc. and others.
22d2bb24f747c65578da13d5b13b82f0669690461Fredrik Roubert// License & terms of use: http://www.unicode.org/copyright.html#License
3bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert/*
4bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert *******************************************************************************
5bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert * Copyright (C) 2010-2011, International Business Machines Corporation and    *
6bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert * others. All Rights Reserved.                                                *
7bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert *******************************************************************************
8bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert */
9bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubertpackage com.ibm.icu.impl.locale;
10bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert
11bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubertpublic class ParseStatus {
12bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    int _parseLength = 0;
13bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    int _errorIndex = -1;
14bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    String _errorMsg = null;
15bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert
16bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    public void reset() {
17bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        _parseLength = 0;
18bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        _errorIndex = -1;
19bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        _errorMsg = null;
20bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    }
21bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert
22bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    public boolean isError() {
23bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        return (_errorIndex >= 0);
24bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    }
25bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert
26bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    public int getErrorIndex() {
27bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        return _errorIndex;
28bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    }
29bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert
30bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    public int getParseLength() {
31bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        return _parseLength;
32bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    }
33bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert
34bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    public String getErrorMessage() {
35bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert        return _errorMsg;
36bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert    }
37bd1cbb618dcaa1ac6ba7c77dece35cb79593a5d7Fredrik Roubert}
38