code: function (itr, noError) {
              
              if (   typeof itr.hasNext !== 'function'
                  || typeof itr.next    !== 'function' )
                  throw "IllegalArgumentException: itr must implement methods hasNext() and next().";
              
              var prec = 0;
              while (itr.hasNext()) {
                  var p = _getPrecision(itr.next(), noError);
                  if (p > prec)
                      prec = p;
              }
              
              return prec;
          }
docs: Returns the max precision within an Iterator of numbers.
  If this is a float, this method returns the number of decimals.
  If this is an integer, this method returns a negative number.
  
  @param itr {Arrays.Iterator}
  @param noError {Boolean} Optional. Whether throw exception when encountering a
  non-numeric value. Default is 'false'.
  @return {Number} Integer
  @see Number.precision