void ICiSymbolVisitor.Visit(CiClass klass)
{
WriteLine();
Write(klass.Documentation);
Write(klass.Visibility);
OpenClass(klass.IsAbstract, klass, " : ");
if (klass.Constructor != null) {
Write("public ");
Write(klass.Name);
WriteLine("()");
Write(klass.Constructor.Body);
}
foreach (CiSymbol member in klass.Members)
member.Accept(this);
foreach (CiConst konst in klass.ConstArrays) {
Write("static readonly ");
Write(konst.Type);
Write(konst.GlobalName);
Write(" = ");
WriteConst(konst.Value);
WriteLine(";");
}
foreach (CiBinaryResource resource in klass.BinaryResources) {
Write("static readonly byte[] ");
WriteName(resource);
Write(" = ");
WriteConst(resource.Content);
WriteLine(";");
}
CloseBlock();
}