<commit_before>dojo.provide("dojox.string.Builder");

(function(){
	dojox.string.Builder = function(/*String?*/str){
		// summary:
		//		A fast buffer for creating large strings
		// str: The initial string to seed the buffer with
		this.b = dojo.isIE ? [] : "";
		if(str){ this.append(str); }
	};
	
	var m = {
	 	append: function(/*String*/s){ 
			// summary: Append all arguments to the end of the buffer 
			if(arguments.length>1){
				//	Some Duff's device love here.
				var n = Math.floor(arguments.length/8), r = arguments.length%8, i=0;
				do {
					switch(r){
						case 0: this.b += arguments[i++];
						case 7: this.b += arguments[i++];
						case 6: this.b += arguments[i++];
						case 5: this.b += arguments[i++];
						case 4: this.b += arguments[i++];
						case 3: this.b += arguments[i++];
						case 2: this.b += arguments[i++];
						case 1: this.b += arguments[i++];
					}
					r = 0;
				} while(--n>0);
			} else {
				this.b += s;
			}
			return this;	//	dojox.string.Builder
		},
		concat: function(/*String*/s){
			return this.append(s);
		},<commit_msg>One more change: pull the loop unroll out of the non-IE branch. !strict<commit_after>dojo.provide("dojox.string.Builder");

(function(){
	dojox.string.Builder = function(/*String?*/str){
		// summary:
		//		A fast buffer for creating large strings
		// str: The initial string to seed the buffer with
		this.b = dojo.isIE ? [] : "";
		if(str){ this.append(str); }
	};
	
	/*
		A note: it looks like Firefox has some issues iterating over
		the arguments object, so if you are going use append, you 
		should do all you can to pass a single argument for best
		results.
	 */
	var m = {
	 	append: function(/*String*/s){ 
			// summary: Append all arguments to the end of the buffer 
			if(arguments.length>1){
				var i=0;
				while(i<arguments.length){
					this.b += arguments[i++];
				}
			} else {
				this.b += s;
			}
			return this;	//	dojox.string.Builder
		},
		concat: function(/*String*/s){
			return this.append(s);
		},
{'fraction_non_alphanumeric': 0.1643495531281033, 'fraction_numerical': 0.007944389275074478, 'mean_word_length': 2.6636363636363636, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 6, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1022636', 'n_tokens_mistral': 843, 'n_tokens_neox': 694, 'n_words': 200}