blob: ee060e1bee03b3631044090f851596a5da8ff1f3 [file] [log] [blame] [edit]
///
/// 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.
///
///
/// This signifies any kind of mismatched input exceptions such as
/// when the current input does not match the expected token.
///
public class InputMismatchException: RecognitionException {
public init(_ recognizer: Parser, state: Int = ATNState.INVALID_STATE_NUMBER, ctx: ParserRuleContext? = nil) {
let bestCtx = ctx ?? recognizer._ctx
super.init(recognizer, recognizer.getInputStream()!, bestCtx)
if let token = try? recognizer.getCurrentToken() {
setOffendingToken(token)
}
if (state != ATNState.INVALID_STATE_NUMBER) {
setOffendingState(state)
}
}
}