constructor( type, inputs, name = '', precision = '' ) {

		/**
		 * The node type. This type is the return type of the node function.
		 *
		 * @type {string}
		 */
		this.type = type;

		/**
		 * The function's inputs.
		 *
		 * @type {Array<NodeFunctionInput>}
		 */
		this.inputs = inputs;

		/**
		 * The name of the uniform.
		 *
		 * @type {string}
		 * @default ''
		 */
		this.name = name;

		/**
		 * The precision qualifier.
		 *
		 * @type {string}
		 * @default ''
		 */
		this.precision = precision;

	}
Constructs a new node function.

@param {string} type - The node type. This type is the return type of the node function.
@param {Array<NodeFunctionInput>} inputs - The function's inputs.
@param {string} [name=''] - The function's name.
@param {string} [precision=''] - The precision qualifier.