/**
 * Parsing explode subtemplates ('ex. {v name}') class
 */
cAITemplateParserExplode = function ()
{
	this.myType = "e";
}

// Extending cAITemplateParserExplode with cAITemplateParser
extend(cAITemplateParserExplode, cAITemplateParser);

// Adding methods to cAITemplateParserExplode prototype
mixin(cAITemplateParserExplode.prototype, {
	/**
	 * Parsing template function
	 */
	parse: function ( obj, template )
	{
		// Getting object name and object template
		parts = (new cAIParser(template)).explode();
		object = obj.get(parts[0]);
		object_template = "";
		if (parts.length > 1)
			object_template = parts[1];
		
		// Creating outputtable object
		out_object = new jFly(object_template);
		out_object.myParent = obj;
		out_object.setObject(object);
		
		return out_object.parse();
	}
});

// Adding parser
jFly.prototype.addParser(new cAITemplateParserExplode());
