/*******************************************************************************
 * Copyright (c) 2000, 2021 IBM Corporation and others.
 *
 * This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/legal/epl-2.0/
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 * This is an implementation of an early-draft specification developed under the Java
 * Community Process (JCP) and is made available for testing and evaluation purposes
 * only. The code is not compatible with any specification of the JCP.
 *
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.jdt.internal.compiler.parser;

/*An interface that contains static declarations for some basic information
 about the parser such as the number of rules in the grammar, the starting state, etc...*/
public interface ParserBasicInformation {

	public final static int
	// BEGIN_AUTOGENERATED_REGION

					ERROR_SYMBOL = 135,
					MAX_NAME_LENGTH = 53,
					NUM_STATES = 1207,

					NT_OFFSET = 135,
					SCOPE_UBOUND = 315,
					SCOPE_SIZE = 316,
					LA_STATE_OFFSET = 17863,
					MAX_LA = 1,
					NUM_RULES = 922,
					NUM_TERMINALS = 135,
					NUM_NON_TERMINALS = 426,
					NUM_SYMBOLS = 561,
					START_STATE = 981,
					EOFT_SYMBOL = 64,
					EOLT_SYMBOL = 64,
					ACCEPT_ACTION = 17862,
					ERROR_ACTION = 17863;
}
