/// <summary> /// 変換処理 /// </summary> /// <param name="config">設定情報</param> /// <param name="outputRepository">出力用リポジトリインスタンス</param> /// <param name="inputRepository">入力用リポジトリインスタンス</param> public void Convert(Config config, ITSFileRepository outputRepository, ICSFileRepository inputRepository) { var csApplication = new CSharpAnalyze.ApplicationService.AnalyzeApplication(); // Register Analyzed Event csApplication.Register <CSharpAnalyze.Domain.PublicInterfaces.Events.IAnalyzed>(csApplication, (ev) => { // File指定確認 if (!config.InputFile.EndsWith(ev.FilePath)) { return; } var converter = new MainConverter(); var result = converter.ConvertTS(ev, config); // output file var filePath = ev.FilePath.Replace(".cs", ".ts", StringComparison.CurrentCulture); outputRepository.WriteFile($"{Path.Combine(config.OutputTSRoot.Value, filePath)}", result); }); // Run C# Analyze csApplication.Analyze(config.InputCSRoot.Value, inputRepository); // output fixed TypeScript files outputRepository.OutputFixedTypeScripts(config.OutputTSRoot.Value); }
/// <summary> /// C#・TypeScript変換 /// </summary> /// <param name="config">設定情報</param> /// <param name="outputRepository">出力用リポジトリインスタンス</param> /// <param name="inputRepository">入力用リポジトリインスタンス</param> public void Convert(Config config, ITSFileRepository outputRepository, ICSFileRepository inputRepository) { var service = new ConvertService(); service.Convert(config, outputRepository, inputRepository); }
/// <summary> /// C#・TypeScript変換 /// </summary> /// <param name="config">設定情報</param> /// <param name="outputRepository">出力用リポジトリインスタンス</param> public void Convert(Config config, ITSFileRepository outputRepository) { Convert(config, outputRepository, new CSFileRepository()); }