getVaryingFromNode( node, name = null, type = node.getNodeType( this ), interpolationType = null, interpolationSampling = null ) {

		const nodeData = this.getDataFromNode( node, 'any' );

		let nodeVarying = nodeData.varying;

		if ( nodeVarying === undefined ) {

			const varyings = this.varyings;
			const index = varyings.length;

			if ( name === null ) name = 'nodeVarying' + index;

			nodeVarying = new NodeVarying( name, type, interpolationType, interpolationSampling );

			varyings.push( nodeVarying );

			this.registerDeclaration( nodeVarying );

			nodeData.varying = nodeVarying;

		}

		return nodeVarying;

	}
Returns an instance of {@link NodeVarying} for the given varying node.

@param {(VaryingNode|PropertyNode)} node - The varying node.
@param {?string} name - The varying's name.
@param {string} [type=node.getNodeType( this )] - The varying's type.
@param {?string} interpolationType - The interpolation type of the varying.
@param {?string} interpolationSampling - The interpolation sampling type of the varying.
@return {NodeVar} The node varying.