whole_func_string: function(name, value) {
          if (arguments.length > 1) {
              for (var i = this.length - 1; i >= 0; i--) {
                  utils.prop(this[i], name, value);
              }
              return this;
          } else {
              return this[0] ? utils.prop(this[0], name) : "";
          }
      }
func_code_string: function(name, value) {
          if (arguments.length > 1) {
              for (var i = this.length - 1; i >= 0; i--) {
                  utils.prop(this[i], name, value);
              }
              return this;
          } else {
              return this[0] ? utils.prop(this[0], name) : "";
          }
      }
func_documentation_string: Sets an attribute on all views or gets the value of the attribute
  on the first view
  
  @example
  c.prop('text', 'my text') // sets text to 'my text' on all
  // collection views
  c.prop('name') // gets name attribute on the first view
  
  @param {string} name Name of the attribute
  @param {object=} value Value to set
  @returns {view.Collection|Object} Self or attribute value