1// Copyright 2019 Google LLC. 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14// 15 16// Code generated by protoc-gen-go. DO NOT EDIT. 17// versions: 18// protoc-gen-go v1.22.0 19// protoc v3.11.2 20// source: google/api/documentation.proto 21 22package serviceconfig 23 24import ( 25 reflect "reflect" 26 sync "sync" 27 28 proto "github.com/golang/protobuf/proto" 29 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 30 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 31) 32 33const ( 34 // Verify that this generated code is sufficiently up-to-date. 35 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 36 // Verify that runtime/protoimpl is sufficiently up-to-date. 37 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 38) 39 40// This is a compile-time assertion that a sufficiently up-to-date version 41// of the legacy proto package is being used. 42const _ = proto.ProtoPackageIsVersion4 43 44// `Documentation` provides the information for describing a service. 45// 46// Example: 47// <pre><code>documentation: 48// summary: > 49// The Google Calendar API gives access 50// to most calendar features. 51// pages: 52// - name: Overview 53// content: (== include google/foo/overview.md ==) 54// - name: Tutorial 55// content: (== include google/foo/tutorial.md ==) 56// subpages; 57// - name: Java 58// content: (== include google/foo/tutorial_java.md ==) 59// rules: 60// - selector: google.calendar.Calendar.Get 61// description: > 62// ... 63// - selector: google.calendar.Calendar.Put 64// description: > 65// ... 66// </code></pre> 67// Documentation is provided in markdown syntax. In addition to 68// standard markdown features, definition lists, tables and fenced 69// code blocks are supported. Section headers can be provided and are 70// interpreted relative to the section nesting of the context where 71// a documentation fragment is embedded. 72// 73// Documentation from the IDL is merged with documentation defined 74// via the config at normalization time, where documentation provided 75// by config rules overrides IDL provided. 76// 77// A number of constructs specific to the API platform are supported 78// in documentation text. 79// 80// In order to reference a proto element, the following 81// notation can be used: 82// <pre><code>[fully.qualified.proto.name][]</code></pre> 83// To override the display text used for the link, this can be used: 84// <pre><code>[display text][fully.qualified.proto.name]</code></pre> 85// Text can be excluded from doc using the following notation: 86// <pre><code>(-- internal comment --)</code></pre> 87// 88// A few directives are available in documentation. Note that 89// directives must appear on a single line to be properly 90// identified. The `include` directive includes a markdown file from 91// an external source: 92// <pre><code>(== include path/to/file ==)</code></pre> 93// The `resource_for` directive marks a message to be the resource of 94// a collection in REST view. If it is not specified, tools attempt 95// to infer the resource from the operations in a collection: 96// <pre><code>(== resource_for v1.shelves.books ==)</code></pre> 97// The directive `suppress_warning` does not directly affect documentation 98// and is documented together with service config validation. 99type Documentation struct { 100 state protoimpl.MessageState 101 sizeCache protoimpl.SizeCache 102 unknownFields protoimpl.UnknownFields 103 104 // A short summary of what the service does. Can only be provided by 105 // plain text. 106 Summary string `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"` 107 // The top level pages for the documentation set. 108 Pages []*Page `protobuf:"bytes,5,rep,name=pages,proto3" json:"pages,omitempty"` 109 // A list of documentation rules that apply to individual API elements. 110 // 111 // **NOTE:** All service configuration rules follow "last one wins" order. 112 Rules []*DocumentationRule `protobuf:"bytes,3,rep,name=rules,proto3" json:"rules,omitempty"` 113 // The URL to the root of documentation. 114 DocumentationRootUrl string `protobuf:"bytes,4,opt,name=documentation_root_url,json=documentationRootUrl,proto3" json:"documentation_root_url,omitempty"` 115 // Declares a single overview page. For example: 116 // <pre><code>documentation: 117 // summary: ... 118 // overview: (== include overview.md ==) 119 // </code></pre> 120 // This is a shortcut for the following declaration (using pages style): 121 // <pre><code>documentation: 122 // summary: ... 123 // pages: 124 // - name: Overview 125 // content: (== include overview.md ==) 126 // </code></pre> 127 // Note: you cannot specify both `overview` field and `pages` field. 128 Overview string `protobuf:"bytes,2,opt,name=overview,proto3" json:"overview,omitempty"` 129} 130 131func (x *Documentation) Reset() { 132 *x = Documentation{} 133 if protoimpl.UnsafeEnabled { 134 mi := &file_google_api_documentation_proto_msgTypes[0] 135 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 136 ms.StoreMessageInfo(mi) 137 } 138} 139 140func (x *Documentation) String() string { 141 return protoimpl.X.MessageStringOf(x) 142} 143 144func (*Documentation) ProtoMessage() {} 145 146func (x *Documentation) ProtoReflect() protoreflect.Message { 147 mi := &file_google_api_documentation_proto_msgTypes[0] 148 if protoimpl.UnsafeEnabled && x != nil { 149 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 150 if ms.LoadMessageInfo() == nil { 151 ms.StoreMessageInfo(mi) 152 } 153 return ms 154 } 155 return mi.MessageOf(x) 156} 157 158// Deprecated: Use Documentation.ProtoReflect.Descriptor instead. 159func (*Documentation) Descriptor() ([]byte, []int) { 160 return file_google_api_documentation_proto_rawDescGZIP(), []int{0} 161} 162 163func (x *Documentation) GetSummary() string { 164 if x != nil { 165 return x.Summary 166 } 167 return "" 168} 169 170func (x *Documentation) GetPages() []*Page { 171 if x != nil { 172 return x.Pages 173 } 174 return nil 175} 176 177func (x *Documentation) GetRules() []*DocumentationRule { 178 if x != nil { 179 return x.Rules 180 } 181 return nil 182} 183 184func (x *Documentation) GetDocumentationRootUrl() string { 185 if x != nil { 186 return x.DocumentationRootUrl 187 } 188 return "" 189} 190 191func (x *Documentation) GetOverview() string { 192 if x != nil { 193 return x.Overview 194 } 195 return "" 196} 197 198// A documentation rule provides information about individual API elements. 199type DocumentationRule struct { 200 state protoimpl.MessageState 201 sizeCache protoimpl.SizeCache 202 unknownFields protoimpl.UnknownFields 203 204 // The selector is a comma-separated list of patterns. Each pattern is a 205 // qualified name of the element which may end in "*", indicating a wildcard. 206 // Wildcards are only allowed at the end and for a whole component of the 207 // qualified name, i.e. "foo.*" is ok, but not "foo.b*" or "foo.*.bar". A 208 // wildcard will match one or more components. To specify a default for all 209 // applicable elements, the whole pattern "*" is used. 210 Selector string `protobuf:"bytes,1,opt,name=selector,proto3" json:"selector,omitempty"` 211 // Description of the selected API(s). 212 Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` 213 // Deprecation description of the selected element(s). It can be provided if 214 // an element is marked as `deprecated`. 215 DeprecationDescription string `protobuf:"bytes,3,opt,name=deprecation_description,json=deprecationDescription,proto3" json:"deprecation_description,omitempty"` 216} 217 218func (x *DocumentationRule) Reset() { 219 *x = DocumentationRule{} 220 if protoimpl.UnsafeEnabled { 221 mi := &file_google_api_documentation_proto_msgTypes[1] 222 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 223 ms.StoreMessageInfo(mi) 224 } 225} 226 227func (x *DocumentationRule) String() string { 228 return protoimpl.X.MessageStringOf(x) 229} 230 231func (*DocumentationRule) ProtoMessage() {} 232 233func (x *DocumentationRule) ProtoReflect() protoreflect.Message { 234 mi := &file_google_api_documentation_proto_msgTypes[1] 235 if protoimpl.UnsafeEnabled && x != nil { 236 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 237 if ms.LoadMessageInfo() == nil { 238 ms.StoreMessageInfo(mi) 239 } 240 return ms 241 } 242 return mi.MessageOf(x) 243} 244 245// Deprecated: Use DocumentationRule.ProtoReflect.Descriptor instead. 246func (*DocumentationRule) Descriptor() ([]byte, []int) { 247 return file_google_api_documentation_proto_rawDescGZIP(), []int{1} 248} 249 250func (x *DocumentationRule) GetSelector() string { 251 if x != nil { 252 return x.Selector 253 } 254 return "" 255} 256 257func (x *DocumentationRule) GetDescription() string { 258 if x != nil { 259 return x.Description 260 } 261 return "" 262} 263 264func (x *DocumentationRule) GetDeprecationDescription() string { 265 if x != nil { 266 return x.DeprecationDescription 267 } 268 return "" 269} 270 271// Represents a documentation page. A page can contain subpages to represent 272// nested documentation set structure. 273type Page struct { 274 state protoimpl.MessageState 275 sizeCache protoimpl.SizeCache 276 unknownFields protoimpl.UnknownFields 277 278 // The name of the page. It will be used as an identity of the page to 279 // generate URI of the page, text of the link to this page in navigation, 280 // etc. The full page name (start from the root page name to this page 281 // concatenated with `.`) can be used as reference to the page in your 282 // documentation. For example: 283 // <pre><code>pages: 284 // - name: Tutorial 285 // content: (== include tutorial.md ==) 286 // subpages: 287 // - name: Java 288 // content: (== include tutorial_java.md ==) 289 // </code></pre> 290 // You can reference `Java` page using Markdown reference link syntax: 291 // `[Java][Tutorial.Java]`. 292 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 293 // The Markdown content of the page. You can use <code>(== include {path} 294 // ==)</code> to include content from a Markdown file. 295 Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content,omitempty"` 296 // Subpages of this page. The order of subpages specified here will be 297 // honored in the generated docset. 298 Subpages []*Page `protobuf:"bytes,3,rep,name=subpages,proto3" json:"subpages,omitempty"` 299} 300 301func (x *Page) Reset() { 302 *x = Page{} 303 if protoimpl.UnsafeEnabled { 304 mi := &file_google_api_documentation_proto_msgTypes[2] 305 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 306 ms.StoreMessageInfo(mi) 307 } 308} 309 310func (x *Page) String() string { 311 return protoimpl.X.MessageStringOf(x) 312} 313 314func (*Page) ProtoMessage() {} 315 316func (x *Page) ProtoReflect() protoreflect.Message { 317 mi := &file_google_api_documentation_proto_msgTypes[2] 318 if protoimpl.UnsafeEnabled && x != nil { 319 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 320 if ms.LoadMessageInfo() == nil { 321 ms.StoreMessageInfo(mi) 322 } 323 return ms 324 } 325 return mi.MessageOf(x) 326} 327 328// Deprecated: Use Page.ProtoReflect.Descriptor instead. 329func (*Page) Descriptor() ([]byte, []int) { 330 return file_google_api_documentation_proto_rawDescGZIP(), []int{2} 331} 332 333func (x *Page) GetName() string { 334 if x != nil { 335 return x.Name 336 } 337 return "" 338} 339 340func (x *Page) GetContent() string { 341 if x != nil { 342 return x.Content 343 } 344 return "" 345} 346 347func (x *Page) GetSubpages() []*Page { 348 if x != nil { 349 return x.Subpages 350 } 351 return nil 352} 353 354var File_google_api_documentation_proto protoreflect.FileDescriptor 355 356var file_google_api_documentation_proto_rawDesc = []byte{ 357 0x0a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x6f, 0x63, 358 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 359 0x12, 0x0a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x22, 0xd8, 0x01, 0x0a, 360 0x0d, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 361 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 362 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x70, 0x61, 0x67, 0x65, 363 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 364 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x05, 0x70, 0x61, 0x67, 0x65, 0x73, 365 0x12, 0x33, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 366 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x44, 0x6f, 0x63, 367 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x05, 368 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 369 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 370 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 371 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x6f, 0x6f, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 372 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 373 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x22, 0x8a, 0x01, 0x0a, 0x11, 0x44, 0x6f, 0x63, 0x75, 374 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 375 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 376 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 377 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 378 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x17, 0x64, 379 0x65, 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 380 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x64, 0x65, 381 0x70, 0x72, 0x65, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 382 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x62, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 383 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 384 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 385 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x08, 0x73, 0x75, 386 0x62, 0x70, 0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 387 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x08, 388 0x73, 0x75, 0x62, 0x70, 0x61, 0x67, 0x65, 0x73, 0x42, 0x74, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x2e, 389 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x42, 0x12, 0x44, 0x6f, 0x63, 0x75, 390 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 391 0x5a, 0x45, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 392 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 393 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x73, 0x65, 0x72, 0x76, 394 0x69, 0x63, 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 395 0x65, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0xa2, 0x02, 0x04, 0x47, 0x41, 0x50, 0x49, 0x62, 0x06, 396 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 397} 398 399var ( 400 file_google_api_documentation_proto_rawDescOnce sync.Once 401 file_google_api_documentation_proto_rawDescData = file_google_api_documentation_proto_rawDesc 402) 403 404func file_google_api_documentation_proto_rawDescGZIP() []byte { 405 file_google_api_documentation_proto_rawDescOnce.Do(func() { 406 file_google_api_documentation_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_documentation_proto_rawDescData) 407 }) 408 return file_google_api_documentation_proto_rawDescData 409} 410 411var file_google_api_documentation_proto_msgTypes = make([]protoimpl.MessageInfo, 3) 412var file_google_api_documentation_proto_goTypes = []interface{}{ 413 (*Documentation)(nil), // 0: google.api.Documentation 414 (*DocumentationRule)(nil), // 1: google.api.DocumentationRule 415 (*Page)(nil), // 2: google.api.Page 416} 417var file_google_api_documentation_proto_depIdxs = []int32{ 418 2, // 0: google.api.Documentation.pages:type_name -> google.api.Page 419 1, // 1: google.api.Documentation.rules:type_name -> google.api.DocumentationRule 420 2, // 2: google.api.Page.subpages:type_name -> google.api.Page 421 3, // [3:3] is the sub-list for method output_type 422 3, // [3:3] is the sub-list for method input_type 423 3, // [3:3] is the sub-list for extension type_name 424 3, // [3:3] is the sub-list for extension extendee 425 0, // [0:3] is the sub-list for field type_name 426} 427 428func init() { file_google_api_documentation_proto_init() } 429func file_google_api_documentation_proto_init() { 430 if File_google_api_documentation_proto != nil { 431 return 432 } 433 if !protoimpl.UnsafeEnabled { 434 file_google_api_documentation_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 435 switch v := v.(*Documentation); i { 436 case 0: 437 return &v.state 438 case 1: 439 return &v.sizeCache 440 case 2: 441 return &v.unknownFields 442 default: 443 return nil 444 } 445 } 446 file_google_api_documentation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 447 switch v := v.(*DocumentationRule); i { 448 case 0: 449 return &v.state 450 case 1: 451 return &v.sizeCache 452 case 2: 453 return &v.unknownFields 454 default: 455 return nil 456 } 457 } 458 file_google_api_documentation_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 459 switch v := v.(*Page); i { 460 case 0: 461 return &v.state 462 case 1: 463 return &v.sizeCache 464 case 2: 465 return &v.unknownFields 466 default: 467 return nil 468 } 469 } 470 } 471 type x struct{} 472 out := protoimpl.TypeBuilder{ 473 File: protoimpl.DescBuilder{ 474 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 475 RawDescriptor: file_google_api_documentation_proto_rawDesc, 476 NumEnums: 0, 477 NumMessages: 3, 478 NumExtensions: 0, 479 NumServices: 0, 480 }, 481 GoTypes: file_google_api_documentation_proto_goTypes, 482 DependencyIndexes: file_google_api_documentation_proto_depIdxs, 483 MessageInfos: file_google_api_documentation_proto_msgTypes, 484 }.Build() 485 File_google_api_documentation_proto = out.File 486 file_google_api_documentation_proto_rawDesc = nil 487 file_google_api_documentation_proto_goTypes = nil 488 file_google_api_documentation_proto_depIdxs = nil 489} 490