code: function collectionResult (results) {
      // get context by executing any pre methods on collection views
      return this.collectionResultPre()
      // apply views to each record
      .then(context => {
          // if there are no results then do nothing
          if (!Array.isArray(results) || !results.length) {
              return context
          }
          // check if full records were loaded
          return this.query.limit === 1 || this.query.all
              // apply views to results directly
              ? this.collectionResultList(context, results)
              // create result object to iterate over results
              : this.collectionResultIterator(context, results)
      })
      // apply any post methods to context and return result
      .then(context => {
          return this.collectionResultPost(context)
      })
  }
docs: @function collectionResult
  
  return collection result
  
  @param {array} results
  
  @returns {Promise}