Newer
Older
ResourceDependencyLogic / src / models / ResourceVariable.java
package models;

import lombok.Getter;
import lombok.Setter;
import models.algebra.Symbol;
import models.algebra.Type;

@Setter
@Getter
public class ResourceVariable extends EvaluatableTerm{

	private String name;
	private Type type;
	
	public ResourceVariable(String name, Type type, int order) {
		super(new Symbol("", 0), order);
		this.name = name;
		this.type = type;
	}
	
	@Override
	public EvaluatableTerm linearRightNormalize() {
		return (ResourceVariable) clone();
	}

	@Override
	public void selfLinearRightNormalize() {
	}
	
	@Override
	public boolean isLinearRightNormal() {
		return true;
	}
	
	@Override
	public String toString() {
		return this.name;
	}
	
	@Override
	public String toStringWithOrder() {
		return this.name + "(" + order + ")";
	}
	
	@Override
	public Object clone() {
		return new ResourceVariable(name, type, order);
	}

}