CLanguage by praeclarum

<PackageReference Include="CLanguage" Version="0.9.145" />

 TranslationUnit

public class TranslationUnit : Block
using CLanguage.Compiler; using System; namespace CLanguage.Syntax { public class TranslationUnit : Block { public string Name { get; } public TranslationUnit(string name) : base(VariableScope.Global) { if (string.IsNullOrWhiteSpace(name)) throw new ArgumentException("Translation unit name must be specified", "name"); Name = name; } public override string ToString() { return Name; } } }