import {reduceComputedPropertyMacro} from '../utils';

/**
*  Returns the product of some numeric properties and numeric constants
*
*  Example: 6 * 7 * 2 = 84
*
*  Usage:
*    a: 6,
*    b: 7,
*    c: 2,
*    d: product('a', 'b', 'c'), // 84
*    e: product('a', 'b', 'c', 2) // 168
*/

export default reduceComputedPropertyMacro(
  function (prev, item) {
    return prev * item;
  }
);

@@ -52,17 +52,16 @@
 ';%0A%0A/**%0A
-*
   Return
@@ -66,111 +66,110 @@
 rns 
+an 
 the 
-product of some numeric properties and numeric constants%0A*%0A*  Example: 6 * 7 * 2 = 84%0A*%0A*  Usage:%0A*
+multiplication of its arguments.%0A%0A  Example%0A%0A  %60%60%60javascript%0A  var obj = Ember.Object.extend(%7B%0A
     
@@ -174,17 +174,16 @@
   a: 6,%0A
-*
     b: 7
@@ -184,17 +184,16 @@
   b: 7,%0A
-*
     c: 2
@@ -194,17 +194,16 @@
   c: 2,%0A
-*
     d: p
@@ -228,16 +228,20 @@
 c'),
+     
  // 84%0A
-*
     
@@ -272,16 +272,19 @@
 , 2)
+   
  // 168%0A
 */%0A%0A
@@ -283,11 +283,203 @@
 168%0A
+  %7D);%0A  %60%60%60%0A%0A  @method macros.product%0A  @param *arguments It can be numbers, property keys containing numbers or other computed properties.%0A  @return %7BNumber%7D The product of all its arguments.%0A
 */
-%0A
 %0Aexp

Document `product`