blob: af31f733e946dcaaf4596bb86f31885fb9c1dd0d [file] [log] [blame]
David Symondsafbae882012-09-24 13:21:21 +10001// Code generated by protoc-gen-go.
2// source: google/protobuf/compiler/plugin.proto
Rob Pikeaaa3a622010-03-20 22:32:34 -07003// DO NOT EDIT!
4
David Symonds7d640de2014-01-13 16:01:41 +11005/*
6Package google_protobuf_compiler is a generated protocol buffer package.
7
8It is generated from these files:
9 google/protobuf/compiler/plugin.proto
10
11It has these top-level messages:
12 CodeGeneratorRequest
13 CodeGeneratorResponse
14*/
Rob Pikeaaa3a622010-03-20 22:32:34 -070015package google_protobuf_compiler
16
David Symonds558f13f2014-11-24 10:28:53 +110017import proto "github.com/golang/protobuf/proto"
David Symonds59b73b32015-08-24 13:22:02 +100018import fmt "fmt"
David Symondsafbae882012-09-24 13:21:21 +100019import math "math"
David Symonds558f13f2014-11-24 10:28:53 +110020import google_protobuf "github.com/golang/protobuf/protoc-gen-go/descriptor"
Rob Pikeaaa3a622010-03-20 22:32:34 -070021
David Symondsf530f252014-04-14 09:53:00 +100022// Reference imports to suppress errors if they are not otherwise used.
David Symonds62539862012-08-04 10:06:55 +100023var _ = proto.Marshal
David Symonds59b73b32015-08-24 13:22:02 +100024var _ = fmt.Errorf
David Symondsfa6a18d2011-01-19 09:30:28 +110025var _ = math.Inf
David Symonds8935abf2011-07-04 15:53:16 +100026
David Symonds2402d762016-01-06 12:58:00 +110027// This is a compile-time assertion to ensure that this generated file
28// is compatible with the proto package it is being compiled against.
29const _ = proto.ProtoPackageIsVersion1
30
David Symonds52925902013-07-26 19:20:20 +100031// An encoded CodeGeneratorRequest is written to the plugin's stdin.
Rob Pikeaaa3a622010-03-20 22:32:34 -070032type CodeGeneratorRequest struct {
David Symonds52925902013-07-26 19:20:20 +100033 // The .proto files that were explicitly listed on the command-line. The
34 // code generator should generate code only for these files. Each file's
35 // descriptor will be included in proto_file, below.
36 FileToGenerate []string `protobuf:"bytes,1,rep,name=file_to_generate" json:"file_to_generate,omitempty"`
37 // The generator parameter passed on the command-line.
38 Parameter *string `protobuf:"bytes,2,opt,name=parameter" json:"parameter,omitempty"`
39 // FileDescriptorProtos for all files in files_to_generate and everything
40 // they import. The files will appear in topological order, so each file
41 // appears before any file that imports it.
42 //
43 // protoc guarantees that all proto_files will be written after
44 // the fields above, even though this is not technically guaranteed by the
45 // protobuf wire format. This theoretically could allow a plugin to stream
46 // in the FileDescriptorProtos and handle them one by one rather than read
47 // the entire set into memory at once. However, as of this writing, this
48 // is not similarly optimized on protoc's end -- it will store all fields in
49 // memory at once before sending them to the plugin.
David Symonds8bb32ca2012-06-28 10:22:09 -070050 ProtoFile []*google_protobuf.FileDescriptorProto `protobuf:"bytes,15,rep,name=proto_file" json:"proto_file,omitempty"`
51 XXX_unrecognized []byte `json:"-"`
Rob Pikeaaa3a622010-03-20 22:32:34 -070052}
David Symonds8935abf2011-07-04 15:53:16 +100053
David Symonds221834d2015-12-01 09:32:49 +110054func (m *CodeGeneratorRequest) Reset() { *m = CodeGeneratorRequest{} }
55func (m *CodeGeneratorRequest) String() string { return proto.CompactTextString(m) }
56func (*CodeGeneratorRequest) ProtoMessage() {}
57func (*CodeGeneratorRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
Rob Pikeaaa3a622010-03-20 22:32:34 -070058
David Symonds22e7eb42013-03-23 12:17:58 +110059func (m *CodeGeneratorRequest) GetFileToGenerate() []string {
60 if m != nil {
61 return m.FileToGenerate
62 }
63 return nil
64}
65
66func (m *CodeGeneratorRequest) GetParameter() string {
67 if m != nil && m.Parameter != nil {
68 return *m.Parameter
David Symonds8bb32ca2012-06-28 10:22:09 -070069 }
70 return ""
71}
72
David Symonds22e7eb42013-03-23 12:17:58 +110073func (m *CodeGeneratorRequest) GetProtoFile() []*google_protobuf.FileDescriptorProto {
74 if m != nil {
75 return m.ProtoFile
76 }
77 return nil
78}
79
David Symonds52925902013-07-26 19:20:20 +100080// The plugin writes an encoded CodeGeneratorResponse to stdout.
Rob Pikeaaa3a622010-03-20 22:32:34 -070081type CodeGeneratorResponse struct {
David Symonds52925902013-07-26 19:20:20 +100082 // Error message. If non-empty, code generation failed. The plugin process
83 // should exit with status code zero even if it reports an error in this way.
84 //
85 // This should be used to indicate errors in .proto files which prevent the
86 // code generator from generating correct code. Errors which indicate a
87 // problem in protoc itself -- such as the input CodeGeneratorRequest being
88 // unparseable -- should be reported by writing a message to stderr and
89 // exiting with a non-zero status code.
David Symonds8bb32ca2012-06-28 10:22:09 -070090 Error *string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
91 File []*CodeGeneratorResponse_File `protobuf:"bytes,15,rep,name=file" json:"file,omitempty"`
92 XXX_unrecognized []byte `json:"-"`
Rob Pikeaaa3a622010-03-20 22:32:34 -070093}
Rob Pikeaaa3a622010-03-20 22:32:34 -070094
David Symonds221834d2015-12-01 09:32:49 +110095func (m *CodeGeneratorResponse) Reset() { *m = CodeGeneratorResponse{} }
96func (m *CodeGeneratorResponse) String() string { return proto.CompactTextString(m) }
97func (*CodeGeneratorResponse) ProtoMessage() {}
98func (*CodeGeneratorResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
David Symonds8935abf2011-07-04 15:53:16 +100099
David Symonds22e7eb42013-03-23 12:17:58 +1100100func (m *CodeGeneratorResponse) GetError() string {
101 if m != nil && m.Error != nil {
102 return *m.Error
David Symonds8bb32ca2012-06-28 10:22:09 -0700103 }
104 return ""
105}
106
David Symonds22e7eb42013-03-23 12:17:58 +1100107func (m *CodeGeneratorResponse) GetFile() []*CodeGeneratorResponse_File {
108 if m != nil {
109 return m.File
110 }
111 return nil
112}
113
David Symonds52925902013-07-26 19:20:20 +1000114// Represents a single generated file.
Rob Pikeaaa3a622010-03-20 22:32:34 -0700115type CodeGeneratorResponse_File struct {
David Symonds52925902013-07-26 19:20:20 +1000116 // The file name, relative to the output directory. The name must not
117 // contain "." or ".." components and must be relative, not be absolute (so,
118 // the file cannot lie outside the output directory). "/" must be used as
119 // the path separator, not "\".
120 //
121 // If the name is omitted, the content will be appended to the previous
122 // file. This allows the generator to break large files into small chunks,
123 // and allows the generated text to be streamed back to protoc so that large
124 // files need not reside completely in memory at one time. Note that as of
125 // this writing protoc does not optimize for this -- it will read the entire
126 // CodeGeneratorResponse before writing files to disk.
127 Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
128 // If non-empty, indicates that the named file should already exist, and the
129 // content here is to be inserted into that file at a defined insertion
130 // point. This feature allows a code generator to extend the output
131 // produced by another code generator. The original generator may provide
132 // insertion points by placing special annotations in the file that look
133 // like:
134 // @@protoc_insertion_point(NAME)
135 // The annotation can have arbitrary text before and after it on the line,
136 // which allows it to be placed in a comment. NAME should be replaced with
137 // an identifier naming the point -- this is what other generators will use
138 // as the insertion_point. Code inserted at this point will be placed
139 // immediately above the line containing the insertion point (thus multiple
140 // insertions to the same point will come out in the order they were added).
141 // The double-@ is intended to make it unlikely that the generated code
142 // could contain things that look like insertion points by accident.
143 //
144 // For example, the C++ code generator places the following line in the
145 // .pb.h files that it generates:
146 // // @@protoc_insertion_point(namespace_scope)
147 // This line appears within the scope of the file's package namespace, but
148 // outside of any particular class. Another plugin can then specify the
149 // insertion_point "namespace_scope" to generate additional classes or
150 // other declarations that should be placed in this scope.
151 //
152 // Note that if the line containing the insertion point begins with
153 // whitespace, the same whitespace will be added to every line of the
154 // inserted text. This is useful for languages like Python, where
155 // indentation matters. In these languages, the insertion point comment
156 // should be indented the same amount as any inserted code will need to be
157 // in order to work correctly in that context.
158 //
159 // The code generator that generates the initial file and the one which
160 // inserts into it must both run as part of a single invocation of protoc.
161 // Code generators are executed in the order in which they appear on the
162 // command line.
163 //
164 // If |insertion_point| is present, |name| must also be present.
165 InsertionPoint *string `protobuf:"bytes,2,opt,name=insertion_point" json:"insertion_point,omitempty"`
166 // The file contents.
David Symonds8bb32ca2012-06-28 10:22:09 -0700167 Content *string `protobuf:"bytes,15,opt,name=content" json:"content,omitempty"`
168 XXX_unrecognized []byte `json:"-"`
Rob Pikeaaa3a622010-03-20 22:32:34 -0700169}
David Symonds8935abf2011-07-04 15:53:16 +1000170
David Symonds221834d2015-12-01 09:32:49 +1100171func (m *CodeGeneratorResponse_File) Reset() { *m = CodeGeneratorResponse_File{} }
172func (m *CodeGeneratorResponse_File) String() string { return proto.CompactTextString(m) }
173func (*CodeGeneratorResponse_File) ProtoMessage() {}
174func (*CodeGeneratorResponse_File) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1, 0} }
Rob Pikeaaa3a622010-03-20 22:32:34 -0700175
David Symonds22e7eb42013-03-23 12:17:58 +1100176func (m *CodeGeneratorResponse_File) GetName() string {
177 if m != nil && m.Name != nil {
178 return *m.Name
David Symonds8bb32ca2012-06-28 10:22:09 -0700179 }
180 return ""
181}
182
David Symonds22e7eb42013-03-23 12:17:58 +1100183func (m *CodeGeneratorResponse_File) GetInsertionPoint() string {
184 if m != nil && m.InsertionPoint != nil {
185 return *m.InsertionPoint
David Symonds8bb32ca2012-06-28 10:22:09 -0700186 }
187 return ""
188}
189
David Symonds22e7eb42013-03-23 12:17:58 +1100190func (m *CodeGeneratorResponse_File) GetContent() string {
191 if m != nil && m.Content != nil {
192 return *m.Content
David Symonds8bb32ca2012-06-28 10:22:09 -0700193 }
194 return ""
195}
David Symonds221834d2015-12-01 09:32:49 +1100196
197func init() {
198 proto.RegisterType((*CodeGeneratorRequest)(nil), "google.protobuf.compiler.CodeGeneratorRequest")
199 proto.RegisterType((*CodeGeneratorResponse)(nil), "google.protobuf.compiler.CodeGeneratorResponse")
200 proto.RegisterType((*CodeGeneratorResponse_File)(nil), "google.protobuf.compiler.CodeGeneratorResponse.File")
201}
202
203var fileDescriptor0 = []byte{
204 // 269 bytes of a gzipped FileDescriptorProto
205 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x74, 0x91, 0xc1, 0x4a, 0xc3, 0x40,
206 0x10, 0x86, 0xa9, 0x46, 0xa4, 0x63, 0x25, 0x1a, 0x14, 0x43, 0xf1, 0x10, 0x44, 0xc1, 0x83, 0x6c,
207 0x40, 0x3c, 0x78, 0xf2, 0x10, 0x45, 0xaf, 0xc5, 0x17, 0x08, 0x31, 0x9d, 0x86, 0x85, 0x74, 0x67,
208 0x9d, 0xdd, 0x1c, 0x7d, 0x21, 0x9f, 0xd2, 0xc9, 0xa6, 0x15, 0x09, 0xf6, 0x14, 0xf8, 0xe7, 0xcf,
209 0xf7, 0xcd, 0xb0, 0x70, 0xd3, 0x10, 0x35, 0x2d, 0xe6, 0x96, 0xc9, 0xd3, 0x47, 0xb7, 0xca, 0x6b,
210 0x5a, 0x5b, 0xdd, 0x22, 0xe7, 0xb6, 0xed, 0x1a, 0x6d, 0x54, 0x18, 0x24, 0xe9, 0x50, 0x53, 0xdb,
211 0x9a, 0xda, 0xd6, 0xe6, 0xd9, 0x18, 0xb0, 0x44, 0x57, 0xb3, 0xb6, 0x9e, 0x78, 0x68, 0x5f, 0x7d,
212 0xc1, 0xd9, 0x33, 0x2d, 0xf1, 0x0d, 0x0d, 0x72, 0x25, 0xf1, 0x3b, 0x7e, 0x76, 0xe8, 0x7c, 0x92,
213 0xc2, 0xc9, 0x4a, 0x10, 0xa5, 0xa7, 0xb2, 0x19, 0x66, 0x98, 0x4e, 0xb2, 0xfd, 0xdb, 0x69, 0x72,
214 0x0a, 0x53, 0x5b, 0x71, 0xb5, 0x46, 0x8f, 0x9c, 0xee, 0x65, 0x13, 0x89, 0x1e, 0x01, 0x02, 0xad,
215 0xec, 0x7f, 0x49, 0x63, 0xa9, 0x1d, 0xdd, 0x5f, 0xab, 0xf1, 0x56, 0xaf, 0x32, 0x7c, 0xf9, 0xf5,
216 0x2f, 0x82, 0xfe, 0x7b, 0x02, 0xe7, 0x23, 0xbf, 0xb3, 0x64, 0x1c, 0x26, 0xc7, 0x70, 0x80, 0xcc,
217 0xc4, 0x62, 0xed, 0x15, 0x05, 0x44, 0x7f, 0xe0, 0x0f, 0x6a, 0xd7, 0xc9, 0xea, 0x5f, 0x5a, 0x70,
218 0xcf, 0x9f, 0x20, 0xea, 0xbf, 0xc9, 0x0c, 0x22, 0x23, 0xfb, 0x6f, 0xc8, 0x17, 0x10, 0x6b, 0xa9,
219 0xb0, 0xd7, 0x64, 0x4a, 0x4b, 0xda, 0xf8, 0xcd, 0x55, 0x31, 0x1c, 0xd6, 0x64, 0x3c, 0x4a, 0x10,
220 0xf7, 0x41, 0x71, 0x07, 0x97, 0xa2, 0xd9, 0xa9, 0x2e, 0x66, 0x8b, 0xf0, 0x2a, 0xe1, 0x32, 0xf7,
221 0x13, 0x00, 0x00, 0xff, 0xff, 0xdb, 0x18, 0x2a, 0x2a, 0xbd, 0x01, 0x00, 0x00,
222}