/// 
/// 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.
/// 

//
//  DefaultATNConfig.swift
//  antlr.swift
//
//  Created by janyou on 15/9/14.
//

import Foundation
//public struct DefaultATNConfig: ATNConfig {
//    public var state: ATNState
//    public var alt: Int
//    public var context: PredictionContext?
//    public var semanticContext: SemanticContext
//    public var hashValue: Int {
//
//        var hashCode: Int = 7
//        hashCode = 31 * hashCode + state.stateNumber
//        hashCode = 31 * hashCode + alt
//        hashCode = 31 * hashCode + semanticContext.hashValue
//        return hashCode
//
//    }
//
//
//}
//
//public func ==(lhs: DefaultATNConfig, rhs: DefaultATNConfig) -> Bool {
//
//    if lhs === rhs {
//        return true
//    }
//
//    let same: Bool =
//    lhs.state.stateNumber == rhs.state.stateNumber &&
//            lhs.alt == rhs.alt &&
//            lhs.semanticContext == rhs.semanticContext
//
//    return same
//
//}
//public class DefaultATNConfig: ATNConfig {
//
//    override
//    public var hashValue: Int {
//
//        var hashCode: Int = 7
//        hashCode = 31 * hashCode + state.stateNumber
//        hashCode = 31 * hashCode + alt
//        hashCode = 31 * hashCode + semanticContext.hashValue
//        return hashCode
//
//    }
//
//
//}
//
//public func ==(lhs: DefaultATNConfig, rhs: DefaultATNConfig) -> Bool {
//
//    if lhs === rhs {
//        return true
//    }
//
//    let same: Bool =
//    lhs.state.stateNumber == rhs.state.stateNumber &&
//            lhs.alt == rhs.alt &&
//            lhs.semanticContext == rhs.semanticContext
//
//    return same
//
//}
