File indexing completed on 2025-01-31 10:11:57
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef GOOGLE_PROTOBUF_COMPILER_CSHARP_SOURCE_GENERATOR_BASE_H__
0009 #define GOOGLE_PROTOBUF_COMPILER_CSHARP_SOURCE_GENERATOR_BASE_H__
0010
0011 #include <string>
0012
0013 #include "google/protobuf/compiler/code_generator.h"
0014 #include "google/protobuf/io/printer.h"
0015
0016 namespace google {
0017 namespace protobuf {
0018 namespace compiler {
0019 namespace csharp {
0020
0021 struct Options;
0022
0023 class SourceGeneratorBase {
0024 protected:
0025 SourceGeneratorBase(const Options* options);
0026 virtual ~SourceGeneratorBase();
0027
0028 SourceGeneratorBase(const SourceGeneratorBase&) = delete;
0029 SourceGeneratorBase& operator=(const SourceGeneratorBase&) = delete;
0030
0031 std::string class_access_level();
0032 const Options* options();
0033
0034
0035
0036 void WriteGeneratedCodeAttributes(io::Printer* printer);
0037
0038 private:
0039 const Options *options_;
0040 };
0041
0042 }
0043 }
0044 }
0045 }
0046
0047 #endif
0048