code: function(mapFun, reduceFun, language, options) {
            language = language || "javascript";
            if (typeof(mapFun) !== "string") {
              mapFun = mapFun.toSource ? mapFun.toSource()
                : "(" + mapFun.toString() + ")";
            }
            var body = {language: language, map: mapFun};
            if (reduceFun != null) {
              if (typeof(reduceFun) !== "string")
                reduceFun = reduceFun.toSource ? reduceFun.toSource()
                  : "(" + reduceFun.toString() + ")";
              body.reduce = reduceFun;
            }
            ajax({
                type: "POST",
                url: this.uri + "_temp_view" + encodeOptions(options),
                contentType: "application/json", data: toJSON(body)
              },
              options,
              "An error occurred querying the database"
            );
          }
docs: Creates (and executes) a temporary view based on the view function
  supplied in the JSON request.
  @see <a href="http://techzone.couchbase.com/sites/default/files/
  uploads/all/documentation/couchbase-api-db.html#couchbase-api-db
  _db-temp-view_post">docs for /db/_temp_view</a>
  @param {Function} mapFun Map function
  @param {Function} reduceFun Reduce function
  @param {Function} language Language the map / reduce funs are
  implemented in
  @param {ajaxSettings} options <a href="http://api.jquery.com/
  jQuery.ajax/#jQuery-ajax-settings">jQuery ajax settings</a>