code: function resolverFor(namespace) {
        if (namespace.get('resolver')) {
          Ember.deprecate('Application.resolver is deprecated in favor of Application.Resolver', false);
        }
  
        var ResolverClass = namespace.get('resolver') || namespace.get('Resolver') || DefaultResolver;
        var resolver = ResolverClass.create({
          namespace: namespace
        });
  
        function resolve(fullName) {
          return resolver.resolve(fullName);
        }
  
        resolve.describe = function(fullName) {
          return resolver.lookupDescription(fullName);
        };
  
        resolve.makeToString = function(factory, fullName) {
          return resolver.makeToString(factory, fullName);
        };
  
        resolve.normalize = function(fullName) {
          if (resolver.normalize) {
            return resolver.normalize(fullName);
          } else {
            Ember.deprecate('The Resolver should now provide a \'normalize\' function', false);
            return fullName;
          }
        };
  
        resolve.__resolver__ = resolver;
  
        return resolve;
      }
docs: This function defines the default lookup rules for container lookups:
  
  templates are looked up on `Ember.TEMPLATES`
  other names are looked up on the application after classifying the name.
  For example, `controller:post` looks up `App.PostController` by default.
  if the default lookup fails, look for registered classes on the container
  
  This allows the application to register default injections in the container
  that could be overridden by the normal naming convention.
  
  @private
  @method resolverFor
  @param {Ember.Namespace} namespace the namespace to look for classes
  @return {*} the resolved value for a given lookup