Exemplo n.º 1
0
        internal static IEnumerable <IFixer> GetFixers(TargetConfig config)
        {
            List <IFixer> fixers = new List <IFixer>();

            if (config.RemoveNonprintableChars)
            {
                fixers.Add(new InvalidCharsFixer());
            }

            if (config.LineEnding != null)
            {
                fixers.Add(new LineEndingsFixer(config.LineEnding.Value));
            }

            if (config.Encoding != null)
            {
                fixers.Add(new FileEncodingFixer(config.Encoding));
            }

            return(fixers.AsEnumerable());
        }
Exemplo n.º 2
0
        internal static FiFiResult Run(
            TargetConfig config,
            FileSources sources)
        {
            var items = new List <FiFiFileResult>();

            var fixers = GetFixers(config);

            foreach (var file in sources.All())
            {
                if (Not.Processable(file, out Exception ex))
                {
                    continue;
                }

                foreach (var fixer in fixers)
                {
                    fixer.Fix(file);
                }
                items.Add(new FiFiFileResult(file, Info(fixers)));
            }
            return(Results(items));
        }
Exemplo n.º 3
0
 private FiFiRunner()
 {
     config = new TargetConfig();
     files  = FileSources.New();
 }