Awesome
XCST — eXtensible C-Sharp Templates
XCST is a language optimized for the production of XML and other formats. It's a more general-purpose version of XSLT.
See the project home for more information.
Packages Built From This Repository
Package | Description | Targets |
---|---|---|
Xcst.Compiler | Compilation API. Use this package to translate your XCST programs into C# or Visual Basic code. | .NET 4.6 |
Xcst.Runtime | Runtime and evaluation API. | .NET 4.6, .NET Core 2.0, .NET Standard 2.0 |
System Requirements
The compiler is written in XSLT 2 (depends on Saxon-HE) and sits behind a .NET 4.6 API. This means you need Windows to compile, but can run anywhere. The compiler produces code that is compatible with C# 6 and Visual Basic 14, although template rules are not useful unless you use C# 7 or higher.
The release script (which creates the NuGet packages) and other utility scripts are written in PowerShell 5.1.
The XCST schema is written in Relax NG and converted to XSD using Trang, which requires Java.
Building
Run the following commands to build everything (source and tests).
# restore packages
.\build\restore-packages.ps1
# build solution
MSBuild