Quellatalo.CombineCode.CSharp
0.1.0
dotnet add package Quellatalo.CombineCode.CSharp --version 0.1.0
NuGet\Install-Package Quellatalo.CombineCode.CSharp -Version 0.1.0
<PackageReference Include="Quellatalo.CombineCode.CSharp" Version="0.1.0" />
paket add Quellatalo.CombineCode.CSharp --version 0.1.0
#r "nuget: Quellatalo.CombineCode.CSharp, 0.1.0"
// Install Quellatalo.CombineCode.CSharp as a Cake Addin #addin nuget:?package=Quellatalo.CombineCode.CSharp&version=0.1.0 // Install Quellatalo.CombineCode.CSharp as a Cake Tool #tool nuget:?package=Quellatalo.CombineCode.CSharp&version=0.1.0
Quellatalo.CombineCode.CSharp
A library to combine multiple written CSharp source files into one file.
Author: Quellatalo Nin
Overview
The project is still in early stage. It does not scan the local folders as much as IDEs/compilers do.
Please see the requirements to follow the expected code style.
Usage
const string TransformedFile = "Transformed.cs";
CSharpSourceInfo sourceInfo = CSharpSourceInfo.ReadFromFile("Path/To/File.cs");
// combine the targeted source file and its dependencies to one string.
string combinedCode = sourceInfo.CompileToOneSource();
// write the combined code to file
File.WriteAllText(TransformedFile, combinedCode);
// open the newly written file by using the OS's default behavior
FileUtils.OpenFile(TransformedFile);
Please visit the project repository to see some examples.
Requirements
It's just some standard styling rules:
- SA1402FileMayOnlyContainASingleType
- SA1649FileNameMustMatchTypeName
- IDE0130: Namespace does not match folder structure
Basically, namespaces should have matching folders, and types should have matching .cs
files.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- Microsoft.CodeAnalysis.CSharp.Workspaces (>= 4.12.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
**Added**
- `SimpleCSharpCompiler` and `CSharpSourceInfo` now can utilize `CSharpParseOptions`