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

it.unive.lisa.interprocedural.ContextInsensitiveToken Maven / Gradle / Ivy

package it.unive.lisa.interprocedural;

import it.unive.lisa.analysis.ScopeToken;

/**
 * A context sensitive token that is always the same (aka, do not track any
 * information about the call stack).
 */
public class ContextInsensitiveToken implements ContextSensitivityToken {

	private static final ContextInsensitiveToken singleton = new ContextInsensitiveToken();

	private ContextInsensitiveToken() {
	}

	@Override
	public ContextSensitivityToken empty() {
		return this;
	}

	@Override
	public ContextSensitivityToken pushToken(ScopeToken c) {
		return this;
	}

	@Override
	public ContextSensitivityToken popToken() {
		return this;
	}

	@Override
	public String toString() {
		return "";
	}

	/**
	 * Return an instance of the class.
	 * 
	 * @return an instance of the class
	 */
	public static ContextInsensitiveToken getSingleton() {
		return singleton;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy