EnumGenerator.cs 641 B

12345678910111213141516171819
  1. using Google.ProtocolBuffers.Descriptors;
  2. namespace Google.ProtocolBuffers.ProtoGen {
  3. internal class EnumGenerator : SourceGeneratorBase<EnumDescriptor>, ISourceGenerator {
  4. internal EnumGenerator(EnumDescriptor descriptor) : base(descriptor) {
  5. }
  6. public void Generate(TextGenerator writer) {
  7. writer.WriteLine("{0} enum {1} {{", ClassAccessLevel, Descriptor.Name);
  8. writer.Indent();
  9. foreach (EnumValueDescriptor value in Descriptor.Values) {
  10. writer.WriteLine("{0} = {1},", value.Name, value.Number);
  11. }
  12. writer.Outdent();
  13. writer.WriteLine("}");
  14. writer.WriteLine();
  15. }
  16. }
  17. }