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

org.antlr.v4.runtime.atn.OrderedATNConfigSet Maven / Gradle / Ivy

There is a newer version: 4.9.0
Show newest version
/*
 * Copyright (c) 2012 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.runtime.atn;

/**
 *
 * @author Sam Harwell
 */
public class OrderedATNConfigSet extends ATNConfigSet {

	public OrderedATNConfigSet() {
	}

	public OrderedATNConfigSet(ATNConfigSet set, boolean readonly) {
		super(set, readonly);
	}

	@Override
	public ATNConfigSet clone(boolean readonly) {
		OrderedATNConfigSet copy = new OrderedATNConfigSet(this, readonly);
		if (!readonly && this.isReadOnly()) {
			copy.addAll(this);
		}

		return copy;
	}

	@Override
	protected long getKey(ATNConfig e) {
		return e.hashCode();
	}

	@Override
	protected boolean canMerge(ATNConfig left, long leftKey, ATNConfig right) {
		return left.equals(right);
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy