docs: function(property, name, weight, callback) {
              if (_.isUndefined(callback)) {
                  callback = weight;
                  weight   = 0;
              }
              if (_.isArray(callback)) {
                  weight   = callback[0];
                  callback = callback[1];
              }
              else if (!_.isFunction(callback)) {
                  throw new Error('Setter callback must be a function!');
              }
              if (!(property in this.__setters)) {
                  this.__setters[property] = {};
              }
              this.__setters[property][name] = [weight, callback];
  
              return this;
          }