/**
 * 
 */
package types;

import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;

/**
 * @author Giorgio Ravera
 *
 */
public class Frase
{
	private Symbol soggetto;
	private VerboConiugato verbo;
	private Symbol oggetto;
	
	public Frase(Symbol s, VerboConiugato v, Symbol o)
	{
		soggetto=s;
		verbo=v;
		oggetto=o; 
	}
	
	public Symbol getSoggetto() { return soggetto; }
	public Symbol getVergo() { return verbo; }
	public Symbol getOggetto() { return oggetto; }
	
	public boolean equals(Object o)
	{
		if(o==null || !(o instanceof Symbol))
			return false;
		else if(o == this)
			return true;
		else
		{
			Frase f = (Frase)o;
			return (f.soggetto.equals(this.soggetto) && f.verbo.equals(this.verbo) && f.oggetto.equals(this.oggetto));
		}
	}
	
	public String toString()
	{
		String str1 = new String();
		String str2 = new String();
		String str3 = new String();
		if(verbo!=null)
			str1 = new String("Verbo: " + verbo.getValore() + " " + verbo.getPersona() + " ");
		if(soggetto!=null)
			str2 = new String("Soggetto: " + soggetto.getValore() + " ");
		if(oggetto!=null)
			str3 = new String("Oggetto: " + oggetto.getValore());
		return str1.concat(str2.concat(str3));
	}
}