All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.org.antlr.v4.kotlinruntime.NoViableAltException.kt Maven / Gradle / Ivy

There is a newer version: 0.0.18
Show newest version
/*
 * Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
 * Use of this file is governed by the BSD 3-clause license that
 * can be found in the LICENSE.txt file in the project root.
 */
package org.antlr.v4.kotlinruntime

import org.antlr.v4.kotlinruntime.atn.ATNConfigSet

/** Indicates that the parser could not decide which of two or more paths
 * to take based upon the remaining input. It tracks the starting token
 * of the offending input and also knows where the parser was
 * in the various paths when the error. Reported by reportNoViableAlternative()
 */
class NoViableAltException constructor(recognizer: Parser,
                                       input: TokenStream? = recognizer.readInputStream() as TokenStream?,
                                       /** The token object at the start index; the input stream might
                                        * not be buffering tokens so get a reference to it. (At the
                                        * time the error occurred, of course the stream needs to keep a
                                        * buffer all of the tokens but later we might not have access to those.)
                                        */

                                       val startToken: Token? = recognizer.currentToken,
                                       offendingToken: Token? = recognizer.currentToken,
                                       /** Which configurations did we try at input.index() that couldn't match input.LT(1)?  */

                                       val deadEndConfigs: ATNConfigSet? = null,
                                       ctx: ParserRuleContext? = recognizer.context) : RecognitionException(recognizer, input!!, ctx!!) {

    init {
        this.offendingToken = offendingToken
    }

}// LL(1) error




© 2015 - 2024 Weber Informatics LLC | Privacy Policy