plugins/settag/settag.js
function(Template,expression){
	this.needs = {};
	expression = expression.split(' ');
	if(expression.length < 4){
		this.skip = true;
		Noodles.Utilities.warning(Template,'Set tag has bad syntax');
		return;
	}
	var temp = Noodles.Utilities.parseType(Template,expression[1]);
	if(temp.type !== "object"){
		this.skip = true;
		Noodles.Utilities.warning(Template,'Set tag has bad syntax, the variable must be an identifier or object');
		return;
	}
	this.key = temp;
	
	if(this.key.order.length > 1){
		this.needs = Noodles.Utilities.mergeObjectWith(this.needs,this.key.needs);
	}
	else{
		this.sets = {};
		this.sets[this.key.order[0]] = true;
	}
	this.modifies = {};
	this.modifies[this.key.order[0]] = true;
	
	this.value = Noodles.Utilities.parseType(Template,expression[3]);
	this.needs = Noodles.Utilities.mergeObjectWith(this.needs,this.value.needs);
}
function(Template,expression){
	this.needs = {};
	expression = expression.split(' ');
	if(expression.length < 4){
		this.skip = true;
		Noodles.Utilities.warning(Template,'Set tag has bad syntax');
		return;
	}
	var temp = Noodles.Utilities.parseType(Template,expression[1]);
	if(temp.type !== "object"){
		this.skip = true;
		Noodles.Utilities.warning(Template,'Set tag has bad syntax, the variable must be an identifier or object');
		return;
	}
	this.key = temp;
	
	if(this.key.order.length > 1){
		this.needs = Noodles.Utilities.mergeObjectWith(this.needs,this.key.needs);
	}
	else{
		this.sets = {};
		this.sets[this.key.order[0]] = true;
	}
	this.modifies = {};
	this.modifies[this.key.order[0]] = true;
	
	this.value = Noodles.Utilities.parseType(Template,expression[3]);
	this.needs = Noodles.Utilities.mergeObjectWith(this.needs,this.value.needs);
}
/*--module--
name: Set
description: Set execution
@param {Noodles.Template}
@param {expression}