function next() {
		var parent;
		var node;
		var tmp;
		var msg;
		var pos;
		var i;

		idx += 1;
		debug( 'Linting equation...' );

		parent = equations[ idx ].parent;
		node = equations[ idx ].node;
		i = equations[ idx ].index;

		pos = node.position;
		pos = pos.start.line + ':' + pos.start.column;
		if (
			(
				parent.children[ i+1 ] &&
				EQN_END.test( parent.children[ i+1 ].value )
			) ||
			(
				parent.children[ i+2 ] &&
				EQN_END.test( parent.children[ i+2 ].value )
			) ||
			(
				parent.children[ i+3 ] &&
				EQN_END.test( parent.children[ i+3 ].value )
			)
		) {
			debug( 'Equation starting comment has a matching ending comment.' );
		} else {
			msg = pos+'   error   Equation elements must have matching starting and ending comments   missing-end-comment';
			debug( msg );
			file.message( msg, node );
		}

		tmp = LABEL.exec( node.value );
		if ( tmp && tmp[ 1 ] ) {
			debug( 'Equation has a label: %s', tmp[ 1 ] );
		} else {
			msg = pos+'   error   Equation elements must have a label   missing-equation-label';
			debug( msg );
			file.message( msg, node );
		}

		tmp = ALT.exec( node.value );
		if ( tmp && tmp[ 1 ] ) {
			debug( 'Equation has alternate text: %s', tmp[ 1 ] );
		} else {
			msg = pos+'   error   Equation elements must have alternate text   missing-alternate-text';
			debug( msg );
			file.message( msg, node );
		}

		tmp = RAW.exec( node.value );
		if ( !tmp || !tmp[ 1 ] ) {
			msg = pos+'   error   Equation elements must have a TeX string   missing-tex-string';
			debug( msg );
			file.message( msg, node );
			return done();
		}
		debug( 'Equation has a TeX string: %s', tmp[ 1 ] );
		return tex2svg( tmp[ 1 ], onSVG );

		/**
		* Callback invoked upon attempting to render a TeX equation.
		*
		* @private
		* @param {(Error|null)} error - error object
		*/
		function onSVG( error ) {
			var msg;
			if ( error ) {
				msg = pos+'   error   '+error.message+'   invalid-equation';
				debug( msg );
				file.message( msg, node );
			} else {
				debug( 'Equation successfully renders.' );
			}
			done();
		}
	}
Lints the next node.

@private
@returns {void}