PackageDescriptor.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. namespace Google.ProtocolBuffers.Descriptors {
  5. /// <summary>
  6. /// Represents a package in the symbol table. We use PackageDescriptors
  7. /// just as placeholders so that someone cannot define, say, a message type
  8. /// that has the same name as an existing package.
  9. /// </summary>
  10. internal sealed class PackageDescriptor : IDescriptor<IMessage> {
  11. private readonly string name;
  12. private readonly string fullName;
  13. private readonly FileDescriptor file;
  14. internal PackageDescriptor(string name, string fullName, FileDescriptor file) {
  15. this.file = file;
  16. this.fullName = fullName;
  17. this.name = name;
  18. }
  19. public IMessage Proto {
  20. get { return file.Proto; }
  21. }
  22. public string Name {
  23. get { return name; }
  24. }
  25. public string FullName {
  26. get { return fullName; }
  27. }
  28. public FileDescriptor File {
  29. get { return file; }
  30. }
  31. }
  32. }