/** * @class Ext.util.XTemplateParser * This class parses the XTemplate syntax and calls abstract methods to process the parts. * @private */ /** * @property {Number} level The 'for' or 'foreach' loop context level. This is adjusted * up by one prior to calling {@link #doFor} or {@link #doForEach} and down by one after * calling the corresponding {@link #doEnd} that closes the loop. This will be 1 on the * first {@link #doFor} or {@link #doForEach} call. */ /** * This method is called to process a piece of raw text from the tpl. * @param {String} text * @method doText */ /** * This method is called to process expressions (like `{[expr]}`). * @param {String} expr The body of the expression (inside "{[" and "]}"). * @method doExpr */ /** * This method is called to process simple tags (like `{tag}`). * @method doTag */ /** * This method is called to process `<tpl else>`. * @method doElse */ /** * This method is called to process `{% text %}`. * @param {String} text * @method doEval */ /** * This method is called to process `<tpl if="action">`. If there are other attributes, * these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name (such as 'exec'). * @method doIf */ /** * This method is called to process `<tpl elseif="action">`. If there are other attributes, * these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name (such as 'exec'). * @method doElseIf */ /** * This method is called to process `<tpl switch="action">`. If there are other attributes, * these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name (such as 'exec'). * @method doSwitch */ /** * This method is called to process `<tpl case="action">`. If there are other attributes, * these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name (such as 'exec'). * @method doCase */ /** * This method is called to process `<tpl default>`. * @method doDefault */ /** * This method is called to process `</tpl>`. It is given the action type that started * the tpl and the set of additional actions. * @param {String} type The type of action that is being ended. * @param {Object} actions The other actions keyed by the attribute name (such as 'exec'). * @method doEnd */ /** * This method is called to process `<tpl for="action">`. If there are other attributes, * these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name (such as 'exec'). * @method doFor */ /** * This method is called to process `<tpl foreach="action">`. If there are other * attributes, these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name (such as 'exec'). * @method doForEach */ /** * This method is called to process `<tpl exec="action">`. If there are other attributes, * these are passed in the actions object. * @param {String} action * @param {Object} actions Other actions keyed by the attribute name. * @method doExec */ /** * This method is called to process an empty `<tpl>`. This is unlikely to need to be * implemented, so a default (do nothing) version is provided. * @method doTpl */