function eatAttributeValue(stream) {
	const start = stream.pos;
	if (eatQuoted(stream)) {
		// Should return token that points to unquoted value.
		// Use stream readers’ public API to traverse instead of direct
		// manipulation
		const current = stream.pos;
		let valueStart, valueEnd;

		stream.pos = start;
		stream.next();
		valueStart = stream.start = stream.pos;

		stream.pos = current;
		stream.backUp(1);
		valueEnd = stream.pos;

		const result = token(stream, valueStart, valueEnd);
		stream.pos = current;
		return result;
	}

	return eatPaired(stream) || eatUnquoted(stream);
}
function eatAttributeValue(stream) {
	const start = stream.pos;
	if (eatQuoted(stream)) {
		// Should return token that points to unquoted value.
		// Use stream readers’ public API to traverse instead of direct
		// manipulation
		const current = stream.pos;
		let valueStart, valueEnd;

		stream.pos = start;
		stream.next();
		valueStart = stream.start = stream.pos;

		stream.pos = current;
		stream.backUp(1);
		valueEnd = stream.pos;

		const result = token(stream, valueStart, valueEnd);
		stream.pos = current;
		return result;
	}

	return eatPaired(stream) || eatUnquoted(stream);
}
function eatAttributeValue ( stream ) { const start = stream . pos ; if ( eatQuoted ( stream ) ) { // Should return token that points to unquoted value. // Use stream readers’ public API to traverse instead of direct // manipulation const current = stream . pos ; let valueStart , valueEnd ; stream . pos = start ; stream . next ( ) ; valueStart = stream . start = stream . pos ; stream . pos = current ; stream . backUp ( 1 ) ; valueEnd = stream . pos ; const result = token ( stream , valueStart , valueEnd ) ; stream . pos = current ; return result ; } return eatPaired ( stream ) || eatUnquoted ( stream ) ; }
Consumes attribute value from given location
@param  {StreamReader} stream
@return {Token}
Consumes attribute value from given location