gapic-generator 0.10.1 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/lib/gapic/generator/version.rb +1 -1
  4. data/lib/gapic/generators/default_generator.rb +2 -0
  5. data/lib/gapic/generators/default_generator_parameters.rb +3 -1
  6. data/lib/gapic/grpc_service_config/{service_config.rb → config.rb} +2 -2
  7. data/lib/gapic/grpc_service_config/parser.rb +8 -8
  8. data/lib/gapic/model/method/http_annotation.rb +123 -0
  9. data/lib/gapic/model/method/lro.rb +160 -0
  10. data/lib/gapic/model/method/routing.rb +263 -0
  11. data/lib/gapic/model/mixins.rb +181 -0
  12. data/lib/gapic/model/model_error.rb +26 -0
  13. data/lib/gapic/model/service/nonstandard_lro_provider.rb +293 -0
  14. data/lib/gapic/model.rb +22 -0
  15. data/lib/gapic/path_pattern/pattern.rb +46 -0
  16. data/lib/gapic/path_pattern/segment.rb +97 -9
  17. data/lib/gapic/presenters/gem_presenter.rb +34 -2
  18. data/lib/gapic/presenters/{service_config_presenter.rb → grpc_service_config_presenter.rb} +1 -1
  19. data/lib/gapic/presenters/method_presenter.rb +43 -3
  20. data/lib/gapic/presenters/method_rest_presenter.rb +33 -55
  21. data/lib/gapic/presenters/service/lro_client_presenter.rb +90 -0
  22. data/lib/gapic/presenters/service_presenter.rb +185 -3
  23. data/lib/gapic/presenters/service_rest_presenter.rb +81 -0
  24. data/lib/gapic/presenters/snippet_presenter.rb +1 -0
  25. data/lib/gapic/presenters.rb +3 -1
  26. data/lib/gapic/schema/api.rb +56 -2
  27. data/lib/gapic/schema/loader.rb +4 -1
  28. data/lib/gapic/schema/service_config_parser.rb +118 -0
  29. data/lib/gapic/schema/wrappers.rb +124 -1
  30. data/lib/google/api/auth.pb.rb +75 -0
  31. data/lib/google/api/backend.pb.rb +59 -0
  32. data/lib/google/api/billing.pb.rb +53 -0
  33. data/lib/google/api/context.pb.rb +47 -0
  34. data/lib/google/api/control.pb.rb +38 -0
  35. data/lib/google/api/documentation.pb.rb +56 -0
  36. data/lib/google/api/endpoint.pb.rb +42 -0
  37. data/lib/google/api/label.pb.rb +49 -0
  38. data/lib/google/api/launch_stage.pb.rb +37 -0
  39. data/lib/google/api/log.pb.rb +47 -0
  40. data/lib/google/api/logging.pb.rb +48 -0
  41. data/lib/google/api/metric.pb.rb +90 -0
  42. data/lib/google/api/monitored_resource.pb.rb +68 -0
  43. data/lib/google/api/monitoring.pb.rb +48 -0
  44. data/lib/google/api/quota.pb.rb +63 -0
  45. data/lib/google/api/routing.pb.rb +58 -0
  46. data/lib/google/api/service.pb.rb +90 -0
  47. data/lib/google/api/source_info.pb.rb +44 -0
  48. data/lib/google/api/system_parameter.pb.rb +51 -0
  49. data/lib/google/api/usage.pb.rb +47 -0
  50. data/lib/google/cloud/extended_operations.pb.rb +57 -0
  51. data/lib/google/protobuf/any.pb.rb +1 -1
  52. data/lib/google/protobuf/api.pb.rb +69 -0
  53. data/lib/google/protobuf/descriptor.pb.rb +1 -1
  54. data/lib/google/protobuf/duration.pb.rb +41 -0
  55. data/lib/google/protobuf/source_context.pb.rb +39 -0
  56. data/lib/google/protobuf/struct.pb.rb +65 -0
  57. data/lib/google/protobuf/type.pb.rb +128 -0
  58. data/lib/google/protobuf/wrappers.pb.rb +80 -0
  59. data/templates/default/gem/yardopts.erb +1 -1
  60. data/templates/default/lib/_package.erb +4 -0
  61. data/templates/default/lib/_service.erb +6 -0
  62. data/templates/default/service/client/_client.erb +20 -8
  63. data/templates/default/service/client/_nonstandard_lro.erb +57 -0
  64. data/templates/default/service/client/_self_configure_defaults.erb +2 -2
  65. data/templates/default/service/client/method/def/_options_defaults.erb +1 -8
  66. data/templates/default/service/client/method/def/_response.erb +2 -0
  67. data/templates/default/service/client/method/def/_response_nonstandard_lro.erb +23 -0
  68. data/templates/default/service/client/method/def/_routing_params.erb +36 -0
  69. data/templates/default/service/nonstandard_lro.erb +6 -0
  70. data/templates/default/service/rest/client/_client.erb +32 -5
  71. data/templates/default/service/rest/client/method/def/_response.erb +2 -2
  72. data/templates/default/service/rest/client/method/def/_response_nonstandard_lro.erb +23 -0
  73. data/templates/default/service/test/method/_assert_response.erb +3 -0
  74. metadata +61 -7
  75. data/templates/default/service/rest/client/method/def/_response_lro.erb +0 -7
@@ -0,0 +1,90 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+
9
+ ##
10
+ # Imports
11
+ #
12
+ require 'google/api/auth.pb'
13
+ require 'google/api/backend.pb'
14
+ require 'google/api/billing.pb'
15
+ require 'google/api/context.pb'
16
+ require 'google/api/control.pb'
17
+ require 'google/api/documentation.pb'
18
+ require 'google/api/endpoint.pb'
19
+ require 'google/api/http.pb'
20
+ require 'google/api/label.pb'
21
+ require 'google/api/log.pb'
22
+ require 'google/api/logging.pb'
23
+ require 'google/api/metric.pb'
24
+ require 'google/api/monitored_resource.pb'
25
+ require 'google/api/monitoring.pb'
26
+ require 'google/api/quota.pb'
27
+ require 'google/api/resource.pb'
28
+ require 'google/api/source_info.pb'
29
+ require 'google/api/system_parameter.pb'
30
+ require 'google/api/usage.pb'
31
+ require 'google/protobuf/any.pb'
32
+ require 'google/protobuf/api.pb'
33
+ require 'google/protobuf/type.pb'
34
+ require 'google/protobuf/wrappers.pb'
35
+
36
+ module Google
37
+ module Api
38
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
39
+
40
+ ##
41
+ # Message Classes
42
+ #
43
+ class Service < ::Protobuf::Message; end
44
+
45
+
46
+ ##
47
+ # File Options
48
+ #
49
+ set_option :java_package, "com.google.api"
50
+ set_option :java_outer_classname, "ServiceProto"
51
+ set_option :java_multiple_files, true
52
+ set_option :go_package, "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig"
53
+ set_option :objc_class_prefix, "GAPI"
54
+
55
+
56
+ ##
57
+ # Message Fields
58
+ #
59
+ class Service
60
+ optional ::Google::Protobuf::UInt32Value, :config_version, 20
61
+ optional :string, :name, 1
62
+ optional :string, :id, 33
63
+ optional :string, :title, 2
64
+ optional :string, :producer_project_id, 22
65
+ repeated ::Google::Protobuf::Api, :apis, 3
66
+ repeated ::Google::Protobuf::Type, :types, 4
67
+ repeated ::Google::Protobuf::Enum, :enums, 5
68
+ optional ::Google::Api::Documentation, :documentation, 6
69
+ optional ::Google::Api::Backend, :backend, 8
70
+ optional ::Google::Api::Http, :http, 9
71
+ optional ::Google::Api::Quota, :quota, 10
72
+ optional ::Google::Api::Authentication, :authentication, 11
73
+ optional ::Google::Api::Context, :context, 12
74
+ optional ::Google::Api::Usage, :usage, 15
75
+ repeated ::Google::Api::Endpoint, :endpoints, 18
76
+ optional ::Google::Api::Control, :control, 21
77
+ repeated ::Google::Api::LogDescriptor, :logs, 23
78
+ repeated ::Google::Api::MetricDescriptor, :metrics, 24
79
+ repeated ::Google::Api::MonitoredResourceDescriptor, :monitored_resources, 25
80
+ optional ::Google::Api::Billing, :billing, 26
81
+ optional ::Google::Api::Logging, :logging, 27
82
+ optional ::Google::Api::Monitoring, :monitoring, 28
83
+ optional ::Google::Api::SystemParameters, :system_parameters, 29
84
+ optional ::Google::Api::SourceInfo, :source_info, 37
85
+ end
86
+
87
+ end
88
+
89
+ end
90
+
@@ -0,0 +1,44 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+
9
+ ##
10
+ # Imports
11
+ #
12
+ require 'google/protobuf/any.pb'
13
+
14
+ module Google
15
+ module Api
16
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
17
+
18
+ ##
19
+ # Message Classes
20
+ #
21
+ class SourceInfo < ::Protobuf::Message; end
22
+
23
+
24
+ ##
25
+ # File Options
26
+ #
27
+ set_option :java_package, "com.google.api"
28
+ set_option :java_outer_classname, "SourceInfoProto"
29
+ set_option :java_multiple_files, true
30
+ set_option :go_package, "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig"
31
+ set_option :objc_class_prefix, "GAPI"
32
+
33
+
34
+ ##
35
+ # Message Fields
36
+ #
37
+ class SourceInfo
38
+ repeated ::Google::Protobuf::Any, :source_files, 1
39
+ end
40
+
41
+ end
42
+
43
+ end
44
+
@@ -0,0 +1,51 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+ module Google
9
+ module Api
10
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
11
+
12
+ ##
13
+ # Message Classes
14
+ #
15
+ class SystemParameters < ::Protobuf::Message; end
16
+ class SystemParameterRule < ::Protobuf::Message; end
17
+ class SystemParameter < ::Protobuf::Message; end
18
+
19
+
20
+ ##
21
+ # File Options
22
+ #
23
+ set_option :java_package, "com.google.api"
24
+ set_option :java_outer_classname, "SystemParameterProto"
25
+ set_option :java_multiple_files, true
26
+ set_option :go_package, "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig"
27
+ set_option :objc_class_prefix, "GAPI"
28
+
29
+
30
+ ##
31
+ # Message Fields
32
+ #
33
+ class SystemParameters
34
+ repeated ::Google::Api::SystemParameterRule, :rules, 1
35
+ end
36
+
37
+ class SystemParameterRule
38
+ optional :string, :selector, 1
39
+ repeated ::Google::Api::SystemParameter, :parameters, 2
40
+ end
41
+
42
+ class SystemParameter
43
+ optional :string, :name, 1
44
+ optional :string, :http_header, 2
45
+ optional :string, :url_query_parameter, 3
46
+ end
47
+
48
+ end
49
+
50
+ end
51
+
@@ -0,0 +1,47 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+ module Google
9
+ module Api
10
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
11
+
12
+ ##
13
+ # Message Classes
14
+ #
15
+ class Usage < ::Protobuf::Message; end
16
+ class UsageRule < ::Protobuf::Message; end
17
+
18
+
19
+ ##
20
+ # File Options
21
+ #
22
+ set_option :java_package, "com.google.api"
23
+ set_option :java_outer_classname, "UsageProto"
24
+ set_option :java_multiple_files, true
25
+ set_option :go_package, "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig"
26
+ set_option :objc_class_prefix, "GAPI"
27
+
28
+
29
+ ##
30
+ # Message Fields
31
+ #
32
+ class Usage
33
+ repeated :string, :requirements, 1
34
+ repeated ::Google::Api::UsageRule, :rules, 6
35
+ optional :string, :producer_notification_channel, 7
36
+ end
37
+
38
+ class UsageRule
39
+ optional :string, :selector, 1
40
+ optional :bool, :allow_unregistered_calls, 2
41
+ optional :bool, :skip_service_control, 3
42
+ end
43
+
44
+ end
45
+
46
+ end
47
+
@@ -0,0 +1,57 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+
9
+ ##
10
+ # Imports
11
+ #
12
+ require 'google/protobuf/descriptor.pb'
13
+
14
+ module Google
15
+ module Cloud
16
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
17
+
18
+ ##
19
+ # Enum Classes
20
+ #
21
+ class OperationResponseMapping < ::Protobuf::Enum
22
+ define :UNDEFINED, 0
23
+ define :NAME, 1
24
+ define :STATUS, 2
25
+ define :ERROR_CODE, 3
26
+ define :ERROR_MESSAGE, 4
27
+ end
28
+
29
+
30
+ ##
31
+ # File Options
32
+ #
33
+ set_option :java_package, "com.google.cloud"
34
+ set_option :java_outer_classname, "ExtendedOperationsProto"
35
+ set_option :java_multiple_files, true
36
+ set_option :go_package, "google.golang.org/genproto/googleapis/cloud/extendedops;extendedops"
37
+ set_option :objc_class_prefix, "GAPI"
38
+
39
+
40
+ ##
41
+ # Extended Message Fields
42
+ #
43
+ class ::Google::Protobuf::FieldOptions < ::Protobuf::Message
44
+ optional ::Google::Cloud::OperationResponseMapping, :".google.cloud.operation_field", 1149, :extension => true
45
+ optional :string, :".google.cloud.operation_request_field", 1150, :extension => true
46
+ optional :string, :".google.cloud.operation_response_field", 1151, :extension => true
47
+ end
48
+
49
+ class ::Google::Protobuf::MethodOptions < ::Protobuf::Message
50
+ optional :string, :".google.cloud.operation_service", 1249, :extension => true
51
+ optional :bool, :".google.cloud.operation_polling_method", 1250, :extension => true
52
+ end
53
+
54
+ end
55
+
56
+ end
57
+
@@ -21,7 +21,7 @@ module Google
21
21
  set_option :java_package, "com.google.protobuf"
22
22
  set_option :java_outer_classname, "AnyProto"
23
23
  set_option :java_multiple_files, true
24
- set_option :go_package, "google.golang.org/protobuf/types/known/anypb"
24
+ set_option :go_package, "github.com/golang/protobuf/ptypes/any"
25
25
  set_option :objc_class_prefix, "GPB"
26
26
  set_option :csharp_namespace, "Google.Protobuf.WellKnownTypes"
27
27
 
@@ -0,0 +1,69 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+
9
+ ##
10
+ # Imports
11
+ #
12
+ require 'google/protobuf/source_context.pb'
13
+ require 'google/protobuf/type.pb'
14
+
15
+ module Google
16
+ module Protobuf
17
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
18
+
19
+ ##
20
+ # Message Classes
21
+ #
22
+ class Api < ::Protobuf::Message; end
23
+ class Method < ::Protobuf::Message; end
24
+ class Mixin < ::Protobuf::Message; end
25
+
26
+
27
+ ##
28
+ # File Options
29
+ #
30
+ set_option :java_package, "com.google.protobuf"
31
+ set_option :java_outer_classname, "ApiProto"
32
+ set_option :java_multiple_files, true
33
+ set_option :go_package, "google.golang.org/genproto/protobuf/api;api"
34
+ set_option :objc_class_prefix, "GPB"
35
+ set_option :csharp_namespace, "Google.Protobuf.WellKnownTypes"
36
+
37
+
38
+ ##
39
+ # Message Fields
40
+ #
41
+ class Api
42
+ optional :string, :name, 1
43
+ repeated ::Google::Protobuf::Method, :methods, 2
44
+ repeated ::Google::Protobuf::Option, :options, 3
45
+ optional :string, :version, 4
46
+ optional ::Google::Protobuf::SourceContext, :source_context, 5
47
+ repeated ::Google::Protobuf::Mixin, :mixins, 6
48
+ optional ::Google::Protobuf::Syntax, :syntax, 7
49
+ end
50
+
51
+ class Method
52
+ optional :string, :name, 1
53
+ optional :string, :request_type_url, 2
54
+ optional :bool, :request_streaming, 3
55
+ optional :string, :response_type_url, 4
56
+ optional :bool, :response_streaming, 5
57
+ repeated ::Google::Protobuf::Option, :options, 6
58
+ optional ::Google::Protobuf::Syntax, :syntax, 7
59
+ end
60
+
61
+ class Mixin
62
+ optional :string, :name, 1
63
+ optional :string, :root, 2
64
+ end
65
+
66
+ end
67
+
68
+ end
69
+
@@ -121,7 +121,7 @@ module Google
121
121
  set_option :java_package, "com.google.protobuf"
122
122
  set_option :java_outer_classname, "DescriptorProtos"
123
123
  set_option :optimize_for, ::Google::Protobuf::FileOptions::OptimizeMode::SPEED
124
- set_option :go_package, "google.golang.org/protobuf/types/descriptorpb"
124
+ set_option :go_package, "github.com/golang/protobuf/protoc-gen-go/descriptor;descriptor"
125
125
  set_option :cc_enable_arenas, true
126
126
  set_option :objc_class_prefix, "GPB"
127
127
  set_option :csharp_namespace, "Google.Protobuf.Reflection"
@@ -0,0 +1,41 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+ module Google
9
+ module Protobuf
10
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
11
+
12
+ ##
13
+ # Message Classes
14
+ #
15
+ class Duration < ::Protobuf::Message; end
16
+
17
+
18
+ ##
19
+ # File Options
20
+ #
21
+ set_option :java_package, "com.google.protobuf"
22
+ set_option :java_outer_classname, "DurationProto"
23
+ set_option :java_multiple_files, true
24
+ set_option :go_package, "github.com/golang/protobuf/ptypes/duration"
25
+ set_option :cc_enable_arenas, true
26
+ set_option :objc_class_prefix, "GPB"
27
+ set_option :csharp_namespace, "Google.Protobuf.WellKnownTypes"
28
+
29
+
30
+ ##
31
+ # Message Fields
32
+ #
33
+ class Duration
34
+ optional :int64, :seconds, 1
35
+ optional :int32, :nanos, 2
36
+ end
37
+
38
+ end
39
+
40
+ end
41
+
@@ -0,0 +1,39 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+ module Google
9
+ module Protobuf
10
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
11
+
12
+ ##
13
+ # Message Classes
14
+ #
15
+ class SourceContext < ::Protobuf::Message; end
16
+
17
+
18
+ ##
19
+ # File Options
20
+ #
21
+ set_option :java_package, "com.google.protobuf"
22
+ set_option :java_outer_classname, "SourceContextProto"
23
+ set_option :java_multiple_files, true
24
+ set_option :go_package, "google.golang.org/genproto/protobuf/source_context;source_context"
25
+ set_option :objc_class_prefix, "GPB"
26
+ set_option :csharp_namespace, "Google.Protobuf.WellKnownTypes"
27
+
28
+
29
+ ##
30
+ # Message Fields
31
+ #
32
+ class SourceContext
33
+ optional :string, :file_name, 1
34
+ end
35
+
36
+ end
37
+
38
+ end
39
+
@@ -0,0 +1,65 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+ module Google
9
+ module Protobuf
10
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
11
+
12
+ ##
13
+ # Enum Classes
14
+ #
15
+ class NullValue < ::Protobuf::Enum
16
+ define :NULL_VALUE, 0
17
+ end
18
+
19
+
20
+ ##
21
+ # Message Classes
22
+ #
23
+ class Struct < ::Protobuf::Message
24
+ end
25
+
26
+ class Value < ::Protobuf::Message; end
27
+ class ListValue < ::Protobuf::Message; end
28
+
29
+
30
+ ##
31
+ # File Options
32
+ #
33
+ set_option :java_package, "com.google.protobuf"
34
+ set_option :java_outer_classname, "StructProto"
35
+ set_option :java_multiple_files, true
36
+ set_option :go_package, "github.com/golang/protobuf/ptypes/struct;structpb"
37
+ set_option :cc_enable_arenas, true
38
+ set_option :objc_class_prefix, "GPB"
39
+ set_option :csharp_namespace, "Google.Protobuf.WellKnownTypes"
40
+
41
+
42
+ ##
43
+ # Message Fields
44
+ #
45
+ class Struct
46
+ map :string, ::Google::Protobuf::Value, :fields, 1
47
+ end
48
+
49
+ class Value
50
+ optional ::Google::Protobuf::NullValue, :null_value, 1
51
+ optional :double, :number_value, 2
52
+ optional :string, :string_value, 3
53
+ optional :bool, :bool_value, 4
54
+ optional ::Google::Protobuf::Struct, :struct_value, 5
55
+ optional ::Google::Protobuf::ListValue, :list_value, 6
56
+ end
57
+
58
+ class ListValue
59
+ repeated ::Google::Protobuf::Value, :values, 1
60
+ end
61
+
62
+ end
63
+
64
+ end
65
+
@@ -0,0 +1,128 @@
1
+ # encoding: utf-8
2
+
3
+ ##
4
+ # This file is auto-generated. DO NOT EDIT!
5
+ #
6
+ require 'protobuf'
7
+
8
+
9
+ ##
10
+ # Imports
11
+ #
12
+ require 'google/protobuf/any.pb'
13
+ require 'google/protobuf/source_context.pb'
14
+
15
+ module Google
16
+ module Protobuf
17
+ ::Protobuf::Optionable.inject(self) { ::Google::Protobuf::FileOptions }
18
+
19
+ ##
20
+ # Enum Classes
21
+ #
22
+ class Syntax < ::Protobuf::Enum
23
+ define :SYNTAX_PROTO2, 0
24
+ define :SYNTAX_PROTO3, 1
25
+ end
26
+
27
+
28
+ ##
29
+ # Message Classes
30
+ #
31
+ class Type < ::Protobuf::Message; end
32
+ class Field < ::Protobuf::Message
33
+ class Kind < ::Protobuf::Enum
34
+ define :TYPE_UNKNOWN, 0
35
+ define :TYPE_DOUBLE, 1
36
+ define :TYPE_FLOAT, 2
37
+ define :TYPE_INT64, 3
38
+ define :TYPE_UINT64, 4
39
+ define :TYPE_INT32, 5
40
+ define :TYPE_FIXED64, 6
41
+ define :TYPE_FIXED32, 7
42
+ define :TYPE_BOOL, 8
43
+ define :TYPE_STRING, 9
44
+ define :TYPE_GROUP, 10
45
+ define :TYPE_MESSAGE, 11
46
+ define :TYPE_BYTES, 12
47
+ define :TYPE_UINT32, 13
48
+ define :TYPE_ENUM, 14
49
+ define :TYPE_SFIXED32, 15
50
+ define :TYPE_SFIXED64, 16
51
+ define :TYPE_SINT32, 17
52
+ define :TYPE_SINT64, 18
53
+ end
54
+
55
+ class Cardinality < ::Protobuf::Enum
56
+ define :CARDINALITY_UNKNOWN, 0
57
+ define :CARDINALITY_OPTIONAL, 1
58
+ define :CARDINALITY_REQUIRED, 2
59
+ define :CARDINALITY_REPEATED, 3
60
+ end
61
+
62
+ end
63
+
64
+ class Enum < ::Protobuf::Message; end
65
+ class EnumValue < ::Protobuf::Message; end
66
+ class Option < ::Protobuf::Message; end
67
+
68
+
69
+ ##
70
+ # File Options
71
+ #
72
+ set_option :java_package, "com.google.protobuf"
73
+ set_option :java_outer_classname, "TypeProto"
74
+ set_option :java_multiple_files, true
75
+ set_option :go_package, "google.golang.org/genproto/protobuf/ptype;ptype"
76
+ set_option :cc_enable_arenas, true
77
+ set_option :objc_class_prefix, "GPB"
78
+ set_option :csharp_namespace, "Google.Protobuf.WellKnownTypes"
79
+
80
+
81
+ ##
82
+ # Message Fields
83
+ #
84
+ class Type
85
+ optional :string, :name, 1
86
+ repeated ::Google::Protobuf::Field, :fields, 2
87
+ repeated :string, :oneofs, 3
88
+ repeated ::Google::Protobuf::Option, :options, 4
89
+ optional ::Google::Protobuf::SourceContext, :source_context, 5
90
+ optional ::Google::Protobuf::Syntax, :syntax, 6
91
+ end
92
+
93
+ class Field
94
+ optional ::Google::Protobuf::Field::Kind, :kind, 1
95
+ optional ::Google::Protobuf::Field::Cardinality, :cardinality, 2
96
+ optional :int32, :number, 3
97
+ optional :string, :name, 4
98
+ optional :string, :type_url, 6
99
+ optional :int32, :oneof_index, 7
100
+ optional :bool, :packed, 8
101
+ repeated ::Google::Protobuf::Option, :options, 9
102
+ optional :string, :json_name, 10
103
+ optional :string, :default_value, 11
104
+ end
105
+
106
+ class Enum
107
+ optional :string, :name, 1
108
+ repeated ::Google::Protobuf::EnumValue, :enumvalue, 2
109
+ repeated ::Google::Protobuf::Option, :options, 3
110
+ optional ::Google::Protobuf::SourceContext, :source_context, 4
111
+ optional ::Google::Protobuf::Syntax, :syntax, 5
112
+ end
113
+
114
+ class EnumValue
115
+ optional :string, :name, 1
116
+ optional :int32, :number, 2
117
+ repeated ::Google::Protobuf::Option, :options, 3
118
+ end
119
+
120
+ class Option
121
+ optional :string, :name, 1
122
+ optional ::Google::Protobuf::Any, :value, 2
123
+ end
124
+
125
+ end
126
+
127
+ end
128
+