<commit_before>// Copyright 2015 <NAME> and <NAME>. Provided under a MIT License, see license file on github.
// Used to generate a fastbuild .bff file from UnrealBuildTool to allow caching and distributed builds. 
// Requires fbuild.exe to be in the path.
// As written only supports Win10/VS2015. Other VS toolchains (including Durango) require minor modifications.
// PS4 is also doable, but using sndbs is probably easier.
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Diagnostics;
using System.Linq;

namespace UnrealBuildTool
{
	public class FASTBuild
	{
		public enum ExecutionResult
		{
			Unavailable,
			TasksFailed,
			TasksSucceeded,
		}

		//Run FASTBuild on the list of actions. Relies on fbuild.exe being in the path.
		public static ExecutionResult ExecuteActions(List<Action> Actions)
		{
			if(!(WindowsPlatform.Compiler == WindowsCompiler.VisualStudio2015 && WindowsPlatform.bUseWindowsSDK10))
			{
				Console.WriteLine("Warning: FASTBuild building without both VS2015 and the Win10 SDK is probably not going to work without changes!");
			}

			ExecutionResult FASTBuildResult = ExecutionResult.TasksSucceeded;
			if (Actions.Count > 0)
			{
				string FASTBuildFilePath = Path.Combine(BuildConfiguration.BaseIntermediatePath, "fbuild.bff");
                CreateBffFile(Actions, FASTBuildFilePath);
				return ExecuteBffFile(FASTBuildFilePath);
			}
			return FASTBuildResult;
		}

		private static void AddText(FileStream DestinationFile, string StringToWrite)
		{<commit_msg>One more tab please!<commit_after>// Copyright 2015 <NAME> and <NAME>. Provided under a MIT License, see license file on github.
// Used to generate a fastbuild .bff file from UnrealBuildTool to allow caching and distributed builds. 
// Requires fbuild.exe to be in the path.
// As written only supports Win10/VS2015. Other VS toolchains (including Durango) require minor modifications.
// PS4 is also doable, but using sndbs is probably easier.
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Diagnostics;
using System.Linq;

namespace UnrealBuildTool
{
	public class FASTBuild
	{
		public enum ExecutionResult
		{
			Unavailable,
			TasksFailed,
			TasksSucceeded,
		}

		//Run FASTBuild on the list of actions. Relies on fbuild.exe being in the path.
		public static ExecutionResult ExecuteActions(List<Action> Actions)
		{
			if(!(WindowsPlatform.Compiler == WindowsCompiler.VisualStudio2015 && WindowsPlatform.bUseWindowsSDK10))
			{
				Console.WriteLine("Warning: FASTBuild building without both VS2015 and the Win10 SDK is probably not going to work without changes!");
			}

			ExecutionResult FASTBuildResult = ExecutionResult.TasksSucceeded;
			if (Actions.Count > 0)
			{
				string FASTBuildFilePath = Path.Combine(BuildConfiguration.BaseIntermediatePath, "fbuild.bff");
				CreateBffFile(Actions, FASTBuildFilePath);
				return ExecuteBffFile(FASTBuildFilePath);
			}
			return FASTBuildResult;
		}

		private static void AddText(FileStream DestinationFile, string StringToWrite)
		{
{'fraction_non_alphanumeric': 0.07360977177756349, 'fraction_numerical': 0.015429122468659595, 'mean_word_length': 4.402777777777778, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 11, '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': '46819', 'n_tokens_mistral': 1009, 'n_tokens_neox': 862, 'n_words': 297}