public AlgorithmFileInfo(int n, AlgorithmLanguage lang) { string suffix; this.n = n; this.lang = lang; switch (lang) { case AlgorithmLanguage.CSharp: suffix = ".cs"; break; case AlgorithmLanguage.FSharp: suffix = ".fs"; break; default: suffix = ""; break; } this.file = new FileInfo(string.Format(@"lib\PB{0:d3}{1}.dll", n, suffix)); }
public AlgorithmFileInfo(FileInfo file = null) { if (file == null) throw new ArgumentException("Missing Argument: file"); this.file = file; this.n = int.Parse(Regex.Match(file.Name, @"[1-9]\d*").Value); switch ((file.Name.Split('.')[1].ToLower())) { case "cs": this.lang = AlgorithmLanguage.CSharp; break; case "fs": this.lang = AlgorithmLanguage.FSharp; break; default: this.lang = AlgorithmLanguage.Unknown; break; } }
public Algorithm(int n = 0, AlgorithmLanguage lang = AlgorithmLanguage.CSharp) { this.time = TimeSpan.MaxValue; this.available = false; this.answer = ""; this.isPrepared = false; this.file = new AlgorithmFileInfo(n, lang); loadProblem(); }