function processTag(item, profile, level) {
		if (!item.parent)
			// looks like it's root element
			return item;
		
		var abbrUtils = require('abbreviationUtils');
		var utils = require('utils');
		
		var attrs = makeAttributesString(item, profile);
		var cursor = profile.cursor();
		var isUnary = abbrUtils.isUnary(item);
		var selfClosing = profile.self_closing_tag && isUnary ? '/' : '';
		var start= '';
			
		// define tag name
		var tagName = '%' + profile.tagName(item.name());
		if (tagName.toLowerCase() == '%div' && attrs && attrs.indexOf('{') == -1)
			// omit div tag
			tagName = '';
			
		item.end = '';
		start = tagName + attrs + selfClosing + ' ';
		
		var placeholder = '%s';
		// We can't just replace placeholder with new value because
		// JavaScript will treat double $ character as a single one, assuming
		// we're using RegExp literal.
		item.start = utils.replaceSubstring(item.start, start, item.start.indexOf(placeholder), placeholder);
		
		if (!item.children.length && !isUnary)
			item.start += cursor;
		
		return item;
	}
function processTag(item, profile, level) {
		if (!item.parent)
			
			return item;
		
		var abbrUtils = require('abbreviationUtils');
		var utils = require('utils');
		
		var attrs = makeAttributesString(item, profile);
		var cursor = profile.cursor();
		var isUnary = abbrUtils.isUnary(item);
		var selfClosing = profile.self_closing_tag && isUnary ? '/' : '';
		var start= '';
			
		
		var tagName = '%' + profile.tagName(item.name());
		if (tagName.toLowerCase() == '%div' && attrs && attrs.indexOf('{') == -1)
			
			tagName = '';
			
		item.end = '';
		start = tagName + attrs + selfClosing + ' ';
		
		var placeholder = '%s';
		
		
		
		item.start = utils.replaceSubstring(item.start, start, item.start.indexOf(placeholder), placeholder);
		
		if (!item.children.length && !isUnary)
			item.start += cursor;
		
		return item;
	}
function processTag ( item , profile , level ) { if ( ! item . parent ) // looks like it's root element return item ; var abbrUtils = require ( 'abbreviationUtils' ) ; var utils = require ( 'utils' ) ; var attrs = makeAttributesString ( item , profile ) ; var cursor = profile . cursor ( ) ; var isUnary = abbrUtils . isUnary ( item ) ; var selfClosing = profile . self_closing_tag && isUnary ? '/' : '' ; var start = '' ; // define tag name var tagName = '%' + profile . tagName ( item . name ( ) ) ; if ( tagName . toLowerCase ( ) == '%div' && attrs && attrs . indexOf ( '{' ) == - 1 ) // omit div tag tagName = '' ; item . end = '' ; start = tagName + attrs + selfClosing + ' ' ; var placeholder = '%s' ; // We can't just replace placeholder with new value because // JavaScript will treat double $ character as a single one, assuming // we're using RegExp literal. item . start = utils . replaceSubstring ( item . start , start , item . start . indexOf ( placeholder ) , placeholder ) ; if ( ! item . children . length && ! isUnary ) item . start += cursor ; return item ; }
Processes element with <code>tag</code> type
@param {AbbreviationNode} item
@param {OutputProfile} profile
@param {Number} level Depth level
Processes element with <code > tag< / code > type