Bari.Plugins.Fsharp.Commands.Clean.FsprojCleaner.Clean C# (CSharp) Method

Clean() public method

Performs the additional cleaning step
public Clean ( ICleanParameters parameters ) : void
parameters ICleanParameters
return void
        public void Clean(ICleanParameters parameters)
        {
            foreach (var projectRoot in from module in suite.Modules
                                        from project in module.Projects.Concat(module.TestProjects)
                                        let root = project.RootDirectory
                                        where root != null
                                        select root)
            {
                var fsRoot = projectRoot.GetChildDirectory("fs");
                if (fsRoot != null)
                {
                    foreach (var fsproj in fsRoot.Files.Where(
                        name => name.EndsWith(".fsproj", StringComparison.InvariantCultureIgnoreCase)))
                    {
                        fsRoot.DeleteFile(fsproj);
                    }

                    foreach (var fsproj in fsRoot.Files.Where(
                                name => name.EndsWith(".fsproj.user", StringComparison.InvariantCultureIgnoreCase)))
                    {
                        fsRoot.DeleteFile(fsproj);
                    }

                    foreach (var fsversion in projectRoot.Files.Where(
                                name => name.Equals("version.fs", StringComparison.InvariantCultureIgnoreCase)))
                    {
                        projectRoot.DeleteFile(fsversion);
                    }
                }
            }
        }