function main( context ) {
	var maxLength = context.options[ 0 ] || MAX_LINE_LENGTH;

	/**
	* Checks whether lines in `repl.txt` files do not exceed a specified length.
	*
	* @private
	* @param {Object} ast - full AST
	*/
	function lineLength( ast ) {
		var lines;
		var line;
		var i;
		lines = ast.raw.split( '\n' );
		for ( i = 0; i < lines.length; i++ ) {
			line = lines[ i ];
			line = replace( line, RE_OUTSIDE_ALIAS, substituteAlias );
			if ( line.length > maxLength ) {
				context.report( 'Lines must not exceed '+maxLength+' characters', {
					'start': i,
					'end': i
				});
			}
		}
	}

	/**
	* Replaces a matched alias annoation with the alias corresponding to the package path.
	*
	* @private
	* @param {string} match - alias annotation
	* @param {string} pkg - package name
	* @returns {string} alias name or original string
	*/
	function substituteAlias( match, pkg ) {
		var alias = pkg2alias( pkg );
		if ( alias ) {
			return alias;
		}
		return match;
	}

	return {
		'function': lineLength
	};
}
Rule for enforcing that lines in `repl.txt` files do not exceed a specified length.

@param {Context} context - lint context
@param {Array} options - rule options
@returns {Object} validators