lib/polymorphic.js
function parameterize(candidate) {
		candidate.param = candidate.param.map(function(param) {
			var value;

			if ('value' in param) {
				value = param.value;
			}
			else if ('reference' in param) {
				value = candidate.param.reduce(function(p, c) {
					return c !== param && !p && param.reference === c.name && 'value' in c ? c.value : p;
				}, null);
			}

			return value;
		});

		return candidate;
	}
function parameterize(candidate) {
		candidate.param = candidate.param.map(function(param) {
			var value;

			if ('value' in param) {
				value = param.value;
			}
			else if ('reference' in param) {
				value = candidate.param.reduce(function(p, c) {
					return c !== param && !p && param.reference === c.name && 'value' in c ? c.value : p;
				}, null);
			}

			return value;
		});

		return candidate;
	}
function parameterize ( candidate ) { candidate . param = candidate . param . map ( function ( param ) { var value ; if ( 'value' in param ) { value = param . value ; } else if ( 'reference' in param ) { value = candidate . param . reduce ( function ( p , c ) { return c !== param && ! p && param . reference === c . name && 'value' in c ? c . value : p ; } , null ) ; } return value ; } ) ; return candidate ; }
Map the param property of given candidate to contain only the values and resolve any references to other arguments
@name    parameterize
@access  internal
@param   Object candidate
@return  Object candidate (with resolved params)
Map the param property of given candidate to contain only the values and resolve any references to other arguments