You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			39 lines
		
	
	
		
			569 B
		
	
	
	
		
			JavaScript
		
	
			
		
		
	
	
			39 lines
		
	
	
		
			569 B
		
	
	
	
		
			JavaScript
		
	
| /*
 | |
| 	MIT License http://www.opensource.org/licenses/mit-license.php
 | |
| 	Author Tobias Koppers @sokra
 | |
| */
 | |
| "use strict";
 | |
| 
 | |
| class Source {
 | |
| 	source() {
 | |
| 		throw new Error("Abstract");
 | |
| 	}
 | |
| 
 | |
| 	buffer() {
 | |
| 		const source = this.source();
 | |
| 		if (Buffer.isBuffer(source)) return source;
 | |
| 		return Buffer.from(source, "utf-8");
 | |
| 	}
 | |
| 
 | |
| 	size() {
 | |
| 		return this.buffer().length;
 | |
| 	}
 | |
| 
 | |
| 	map(options) {
 | |
| 		return null;
 | |
| 	}
 | |
| 
 | |
| 	sourceAndMap(options) {
 | |
| 		return {
 | |
| 			source: this.source(),
 | |
| 			map: this.map(options)
 | |
| 		};
 | |
| 	}
 | |
| 
 | |
| 	updateHash(hash) {
 | |
| 		throw new Error("Abstract");
 | |
| 	}
 | |
| }
 | |
| 
 | |
| module.exports = Source;
 |