shared/app.js
function(entryPath, attributes) {
    if (this.options.templateAdapterInstance) {
      this.templateAdapter = this.options.templateAdapterInstance;
    } else {
      var templateAdapterModule = attributes.templateAdapter || this.defaults.templateAdapter,
        templateAdapterOptions = {entryPath: entryPath},
        templateEngine = require(attributes.templateEngine || this.defaults.templateEngine);

      templateAdapterOptions = this.setTemplateFinder(templateAdapterOptions);
      this.templateAdapter = require(templateAdapterModule)(templateAdapterOptions, templateEngine);
    }
  }
function(entryPath, attributes) {
    if (this.options.templateAdapterInstance) {
      this.templateAdapter = this.options.templateAdapterInstance;
    } else {
      var templateAdapterModule = attributes.templateAdapter || this.defaults.templateAdapter,
        templateAdapterOptions = {entryPath: entryPath},
        templateEngine = require(attributes.templateEngine || this.defaults.templateEngine);

      templateAdapterOptions = this.setTemplateFinder(templateAdapterOptions);
      this.templateAdapter = require(templateAdapterModule)(templateAdapterOptions, templateEngine);
    }
  }
function ( entryPath , attributes ) { if ( this . options . templateAdapterInstance ) { this . templateAdapter = this . options . templateAdapterInstance ; } else { var templateAdapterModule = attributes . templateAdapter || this . defaults . templateAdapter , templateAdapterOptions = { entryPath : entryPath } , templateEngine = require ( attributes . templateEngine || this . defaults . templateEngine ) ; templateAdapterOptions = this . setTemplateFinder ( templateAdapterOptions ) ; this . templateAdapter = require ( templateAdapterModule ) ( templateAdapterOptions , templateEngine ) ; } }
@shared

Initialize the `templateAdapter`, allowing application developers to use whichever
templating system they want.

We can't use `this.get('templateAdapter')` here because `Backbone.Model`'s
constructor has not yet been called.
@shared