code: function(chart, hook, args) {
  		var descriptors = this.descriptors(chart);
  		var ilen = descriptors.length;
  		var i, descriptor, plugin, params, method;
  
  		for (i = 0; i < ilen; ++i) {
  			descriptor = descriptors[i];
  			plugin = descriptor.plugin;
  			method = plugin[hook];
  			if (typeof method === 'function') {
  				params = [chart].concat(args || []);
  				params.push(descriptor.options);
  				if (method.apply(plugin, params) === false) {
  					return false;
  				}
  			}
  		}
  
  		return true;
  	}
docs: Calls enabled plugins for `chart` on the specified hook and with the given args.
  This method immediately returns as soon as a plugin explicitly returns false. The
  returned value can be used, for instance, to interrupt the current action.
  @param {Chart} chart - The chart instance for which plugins should be called.
  @param {string} hook - The name of the plugin method to call (e.g. 'beforeUpdate').
  @param {Array} [args] - Extra arguments to apply to the hook call.
  @returns {boolean} false if any of the plugins return false, else returns true.