<commit_before>package org.xtext.gradle.tasks.internal

import java.util.Map
import org.gradle.api.Project
import org.xtext.gradle.tasks.Outlet
import org.xtext.gradle.tasks.XtextExtension
import org.xtext.gradle.tasks.XtextSourceSetOutputs

class DefaultXtextSourceSetOutputs implements XtextSourceSetOutputs {
	val Project project
	val Map<Outlet, Object> dirs = newHashMap
	
	new(Project project, XtextExtension xtext) {
		this.project = project
		xtext.languages.all[
			generator.outlets.whenObjectRemoved[
				dirs.remove(it)
			]
		]
	}

	override getDirs() {
		project.files(dirs.values)
	}

	override getDir(Outlet outlet) {
		project.file(dirs.get(outlet))
	}

	override dir(Outlet outlet, Object path) {
		dirs.put(outlet, path)
	}
}<commit_msg>Fix incremental compilation on Gradle 3.0<commit_after>package org.xtext.gradle.tasks.internal

import java.util.Map
import org.gradle.api.Project
import org.xtext.gradle.tasks.Outlet
import org.xtext.gradle.tasks.XtextExtension
import org.xtext.gradle.tasks.XtextSourceSetOutputs

class DefaultXtextSourceSetOutputs implements XtextSourceSetOutputs {
	val Project project
	val Map<Outlet, Object> dirs = newLinkedHashMap
	
	new(Project project, XtextExtension xtext) {
		this.project = project
		xtext.languages.all[
			generator.outlets.whenObjectRemoved[
				dirs.remove(it)
			]
		]
	}

	override getDirs() {
		project.files(dirs.values)
	}

	override getDir(Outlet outlet) {
		project.file(dirs.get(outlet))
	}

	override dir(Outlet outlet, Object path) {
		dirs.put(outlet, path)
	}
}
{'fraction_non_alphanumeric': 0.09767141009055627, 'fraction_numerical': 0.00129366106080207, 'mean_word_length': 4.75092936802974, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, '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': '6351502', 'n_tokens_mistral': 580, 'n_tokens_neox': 528, 'n_words': 99}