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

org.fulib.scenarios.ast.CompilationContext Maven / Gradle / Ivy

The newest version!
// Generated by GenTreeSrc v0.10.2
// DO NOT EDIT - CHANGES WILL BE LOST ON RE-GENERATE

package org.fulib.scenarios.ast;

import java.util.List;
import java.util.Map;
import org.fulib.scenarios.library.Library;
import org.fulib.scenarios.tool.Config;


public interface CompilationContext extends Node
{
	// =============== Static Methods ===============
	static CompilationContext of(Config config, Map groups, List libraries) { return new Impl(config, groups, libraries); }
	// =============== Properties ===============
	Config getConfig();
	void setConfig(Config config);
	Map getGroups();
	void setGroups(Map groups);
	List getLibraries();
	void setLibraries(List libraries);
	// =============== Methods ===============
	default  R accept(CompilationContext.Visitor visitor, P par) { return visitor.visit(this, par); }
	@Override default  R accept(Node.Visitor visitor, P par) { return visitor.visit(this, par); }
	// =============== Classes ===============
	class Impl implements CompilationContext
	{
		// =============== Fields ===============
		private Config config;
		private Map groups;
		private List libraries;
		// =============== Constructors ===============
		public Impl() {}
		public Impl(Config config, Map groups, List libraries)
		{
			this.config = config;
			this.groups = groups;
			this.libraries = libraries;
		}
		// =============== Properties ===============
		@Override public Config getConfig() { return this.config; }
		@Override public void setConfig(Config config) { this.config = config; }
		@Override public Map getGroups() { return this.groups; }
		@Override public void setGroups(Map groups) { this.groups = groups; }
		@Override public List getLibraries() { return this.libraries; }
		@Override public void setLibraries(List libraries) { this.libraries = libraries; }
	}
	interface Visitor
	{
		// =============== Methods ===============
		default R visit(CompilationContext compilationContext, P par) { throw new UnsupportedOperationException(this.getClass().getName() + ".visit(" + compilationContext.getClass().getName() + ")"); }
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy