@devvit/protos 0.11.6-next-2025-01-28-ba7ef7fe2.0 → 0.11.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (241) hide show
  1. package/package.json +4 -4
  2. package/schema/devvit/plugin/buildpack/buildpack_common.proto +1 -6
  3. package/schema/snootobuf.devenv.lock +102 -210
  4. package/schema/snootobuf.lock +102 -210
  5. package/schema/snootobuf.redditapi.lock +102 -210
  6. package/schema/snootobuf.ts.lock +102 -210
  7. package/types/devvit/dev_portal/dev_portal.d.ts +0 -2
  8. package/types/devvit/dev_portal/dev_portal.d.ts.map +1 -1
  9. package/types/devvit/plugin/builder/builder.d.ts +0 -4
  10. package/types/devvit/plugin/builder/builder.d.ts.map +1 -1
  11. package/types/devvit/plugin/buildpack/buildpack.d.ts +0 -8
  12. package/types/devvit/plugin/buildpack/buildpack.d.ts.map +1 -1
  13. package/types/devvit/plugin/buildpack/buildpack_common.d.ts +0 -3
  14. package/types/devvit/plugin/buildpack/buildpack_common.d.ts.map +1 -1
  15. package/types/devvit/plugin/buildpack/buildpack_common.js +1 -37
  16. package/types/devvit/plugin/linker/linker.d.ts +0 -2
  17. package/types/devvit/plugin/linker/linker.d.ts.map +1 -1
  18. package/types/devvit/plugin/linker/resolver.d.ts +0 -2
  19. package/types/devvit/plugin/linker/resolver.d.ts.map +1 -1
  20. package/meta.min.json +0 -7820
  21. package/protos.min.js +0 -2
  22. package/protos.min.js.map +0 -7
  23. package/schema/.snootobuf/deps/buf/validate/expression.proto +0 -92
  24. package/schema/.snootobuf/deps/buf/validate/priv/private.proto +0 -41
  25. package/schema/.snootobuf/deps/buf/validate/validate.proto +0 -4130
  26. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/audit.proto +0 -72
  27. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/auth.proto +0 -49
  28. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/organization.proto +0 -54
  29. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/service.proto +0 -46
  30. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/subscription.proto +0 -72
  31. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/ui.proto +0 -20
  32. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/user.proto +0 -45
  33. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/admin.proto +0 -54
  34. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/delivery.proto +0 -773
  35. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/filter.proto +0 -66
  36. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/firehose.proto +0 -100
  37. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/intake.proto +0 -19
  38. package/schema/.snootobuf/deps/devvit/events/v1alpha/events.proto +0 -446
  39. package/schema/.snootobuf/deps/devvit/gateway/v1alpha/payments.proto +0 -24
  40. package/schema/.snootobuf/deps/devvit/options/options.proto +0 -98
  41. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/commentv2.proto +0 -29
  42. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/flair.proto +0 -25
  43. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modaction.proto +0 -53
  44. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modmail.proto +0 -56
  45. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/postv2.proto +0 -107
  46. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/subredditv2.proto +0 -41
  47. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/userv2.proto +0 -23
  48. package/schema/.snootobuf/deps/devvit/triggers/v1alpha/triggers.proto +0 -162
  49. package/schema/.snootobuf/deps/enum/account_gender_category.proto +0 -14
  50. package/schema/.snootobuf/deps/enum/approval_status.proto +0 -15
  51. package/schema/.snootobuf/deps/enum/automated_reporting_level.proto +0 -12
  52. package/schema/.snootobuf/deps/enum/ban_evasion_threshold.proto +0 -13
  53. package/schema/.snootobuf/deps/enum/ban_info_action.proto +0 -12
  54. package/schema/.snootobuf/deps/enum/block_relation_type.proto +0 -11
  55. package/schema/.snootobuf/deps/enum/comment_sort.proto +0 -18
  56. package/schema/.snootobuf/deps/enum/comment_type.proto +0 -11
  57. package/schema/.snootobuf/deps/enum/crowd_control_level.proto +0 -12
  58. package/schema/.snootobuf/deps/enum/discussion_type.proto +0 -10
  59. package/schema/.snootobuf/deps/enum/distinguish_type.proto +0 -14
  60. package/schema/.snootobuf/deps/enum/flair_position.proto +0 -11
  61. package/schema/.snootobuf/deps/enum/hateful_content_threshold.proto +0 -12
  62. package/schema/.snootobuf/deps/enum/link_content_type.proto +0 -11
  63. package/schema/.snootobuf/deps/enum/link_type.proto +0 -11
  64. package/schema/.snootobuf/deps/enum/link_visibility.proto +0 -11
  65. package/schema/.snootobuf/deps/enum/prediction_leaderboard_entry_type.proto +0 -11
  66. package/schema/.snootobuf/deps/enum/promo_layout.proto +0 -11
  67. package/schema/.snootobuf/deps/enum/removed_by_type.proto +0 -18
  68. package/schema/.snootobuf/deps/enum/spam_level.proto +0 -11
  69. package/schema/.snootobuf/deps/enum/subreddit_type.proto +0 -16
  70. package/schema/.snootobuf/deps/enum/verdict.proto +0 -14
  71. package/schema/.snootobuf/deps/enum/vote.proto +0 -12
  72. package/schema/.snootobuf/deps/enum/whitelist_status.proto +0 -17
  73. package/schema/.snootobuf/deps/enum/wiki_edit_mode.proto +0 -12
  74. package/schema/.snootobuf/deps/evaluator/evaluator.proto +0 -203
  75. package/schema/.snootobuf/deps/google/api/annotations.proto +0 -31
  76. package/schema/.snootobuf/deps/google/api/apikeys/v2/apikeys.proto +0 -288
  77. package/schema/.snootobuf/deps/google/api/apikeys/v2/resources.proto +0 -175
  78. package/schema/.snootobuf/deps/google/api/auth.proto +0 -237
  79. package/schema/.snootobuf/deps/google/api/backend.proto +0 -185
  80. package/schema/.snootobuf/deps/google/api/billing.proto +0 -77
  81. package/schema/.snootobuf/deps/google/api/client.proto +0 -431
  82. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/cloudquotas.proto +0 -322
  83. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/resources.proto +0 -315
  84. package/schema/.snootobuf/deps/google/api/config_change.proto +0 -84
  85. package/schema/.snootobuf/deps/google/api/consumer.proto +0 -82
  86. package/schema/.snootobuf/deps/google/api/context.proto +0 -92
  87. package/schema/.snootobuf/deps/google/api/control.proto +0 -41
  88. package/schema/.snootobuf/deps/google/api/distribution.proto +0 -213
  89. package/schema/.snootobuf/deps/google/api/documentation.proto +0 -168
  90. package/schema/.snootobuf/deps/google/api/endpoint.proto +0 -69
  91. package/schema/.snootobuf/deps/google/api/error_reason.proto +0 -589
  92. package/schema/.snootobuf/deps/google/api/expr/conformance/v1alpha1/conformance_service.proto +0 -183
  93. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/checked.proto +0 -343
  94. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/eval.proto +0 -118
  95. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/explain.proto +0 -53
  96. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/syntax.proto +0 -438
  97. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/value.proto +0 -115
  98. package/schema/.snootobuf/deps/google/api/expr/v1beta1/decl.proto +0 -84
  99. package/schema/.snootobuf/deps/google/api/expr/v1beta1/eval.proto +0 -125
  100. package/schema/.snootobuf/deps/google/api/expr/v1beta1/expr.proto +0 -265
  101. package/schema/.snootobuf/deps/google/api/expr/v1beta1/source.proto +0 -62
  102. package/schema/.snootobuf/deps/google/api/expr/v1beta1/value.proto +0 -114
  103. package/schema/.snootobuf/deps/google/api/field_behavior.proto +0 -104
  104. package/schema/.snootobuf/deps/google/api/field_info.proto +0 -106
  105. package/schema/.snootobuf/deps/google/api/http.proto +0 -371
  106. package/schema/.snootobuf/deps/google/api/httpbody.proto +0 -81
  107. package/schema/.snootobuf/deps/google/api/label.proto +0 -48
  108. package/schema/.snootobuf/deps/google/api/launch_stage.proto +0 -72
  109. package/schema/.snootobuf/deps/google/api/log.proto +0 -54
  110. package/schema/.snootobuf/deps/google/api/logging.proto +0 -81
  111. package/schema/.snootobuf/deps/google/api/metric.proto +0 -268
  112. package/schema/.snootobuf/deps/google/api/monitored_resource.proto +0 -130
  113. package/schema/.snootobuf/deps/google/api/monitoring.proto +0 -107
  114. package/schema/.snootobuf/deps/google/api/policy.proto +0 -85
  115. package/schema/.snootobuf/deps/google/api/quota.proto +0 -184
  116. package/schema/.snootobuf/deps/google/api/resource.proto +0 -243
  117. package/schema/.snootobuf/deps/google/api/routing.proto +0 -461
  118. package/schema/.snootobuf/deps/google/api/service.proto +0 -191
  119. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/check_error.proto +0 -124
  120. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/distribution.proto +0 -166
  121. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/http_request.proto +0 -93
  122. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/log_entry.proto +0 -126
  123. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/metric_value.proto +0 -81
  124. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/operation.proto +0 -123
  125. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/quota_controller.proto +0 -245
  126. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/service_controller.proto +0 -260
  127. package/schema/.snootobuf/deps/google/api/servicecontrol/v2/service_controller.proto +0 -196
  128. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/resources.proto +0 -295
  129. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/servicemanager.proto +0 -508
  130. package/schema/.snootobuf/deps/google/api/serviceusage/v1/resources.proto +0 -130
  131. package/schema/.snootobuf/deps/google/api/serviceusage/v1/serviceusage.proto +0 -305
  132. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/resources.proto +0 -458
  133. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/serviceusage.proto +0 -793
  134. package/schema/.snootobuf/deps/google/api/source_info.proto +0 -31
  135. package/schema/.snootobuf/deps/google/api/system_parameter.proto +0 -96
  136. package/schema/.snootobuf/deps/google/api/usage.proto +0 -96
  137. package/schema/.snootobuf/deps/google/api/visibility.proto +0 -113
  138. package/schema/.snootobuf/deps/google/cloud/extended_operations.proto +0 -150
  139. package/schema/.snootobuf/deps/google/iam/admin/v1/iam.proto +0 -1087
  140. package/schema/.snootobuf/deps/google/iam/v1/iam_policy.proto +0 -145
  141. package/schema/.snootobuf/deps/google/iam/v1/logging/audit_data.proto +0 -34
  142. package/schema/.snootobuf/deps/google/iam/v1/options.proto +0 -41
  143. package/schema/.snootobuf/deps/google/iam/v1/policy.proto +0 -240
  144. package/schema/.snootobuf/deps/google/logging/type/http_request.proto +0 -92
  145. package/schema/.snootobuf/deps/google/logging/type/log_severity.proto +0 -72
  146. package/schema/.snootobuf/deps/google/longrunning/operations.proto +0 -247
  147. package/schema/.snootobuf/deps/google/protobuf/any.proto +0 -158
  148. package/schema/.snootobuf/deps/google/protobuf/api.proto +0 -208
  149. package/schema/.snootobuf/deps/google/protobuf/compiler/plugin.proto +0 -183
  150. package/schema/.snootobuf/deps/google/protobuf/descriptor.proto +0 -921
  151. package/schema/.snootobuf/deps/google/protobuf/duration.proto +0 -116
  152. package/schema/.snootobuf/deps/google/protobuf/empty.proto +0 -51
  153. package/schema/.snootobuf/deps/google/protobuf/field_mask.proto +0 -245
  154. package/schema/.snootobuf/deps/google/protobuf/source_context.proto +0 -48
  155. package/schema/.snootobuf/deps/google/protobuf/struct.proto +0 -95
  156. package/schema/.snootobuf/deps/google/protobuf/timestamp.proto +0 -147
  157. package/schema/.snootobuf/deps/google/protobuf/type.proto +0 -187
  158. package/schema/.snootobuf/deps/google/protobuf/wrappers.proto +0 -123
  159. package/schema/.snootobuf/deps/google/rpc/code.proto +0 -186
  160. package/schema/.snootobuf/deps/google/rpc/context/attribute_context.proto +0 -287
  161. package/schema/.snootobuf/deps/google/rpc/error_details.proto +0 -246
  162. package/schema/.snootobuf/deps/google/rpc/status.proto +0 -47
  163. package/schema/.snootobuf/deps/google/type/calendar_period.proto +0 -57
  164. package/schema/.snootobuf/deps/google/type/color.proto +0 -170
  165. package/schema/.snootobuf/deps/google/type/date.proto +0 -50
  166. package/schema/.snootobuf/deps/google/type/datetime.proto +0 -97
  167. package/schema/.snootobuf/deps/google/type/dayofweek.proto +0 -51
  168. package/schema/.snootobuf/deps/google/type/expr.proto +0 -51
  169. package/schema/.snootobuf/deps/google/type/fraction.proto +0 -34
  170. package/schema/.snootobuf/deps/google/type/latlng.proto +0 -37
  171. package/schema/.snootobuf/deps/google/type/money.proto +0 -43
  172. package/schema/.snootobuf/deps/google/type/month.proto +0 -66
  173. package/schema/.snootobuf/deps/google/type/postal_address.proto +0 -135
  174. package/schema/.snootobuf/deps/google/type/quaternion.proto +0 -95
  175. package/schema/.snootobuf/deps/google/type/timeofday.proto +0 -44
  176. package/schema/.snootobuf/deps/openapi/helper.proto +0 -20
  177. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +0 -189
  178. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +0 -118
  179. package/schema/.snootobuf/deps/reddit/api/metadata/v1/metadata.proto +0 -55
  180. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account.proto +0 -579
  181. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account_relations.proto +0 -43
  182. package/schema/.snootobuf/deps/reddit/coreplatform/api/metadata/v1/metadata.proto +0 -82
  183. package/schema/.snootobuf/deps/reddit/coreplatform/blocking/v1/user_blocking_service.proto +0 -221
  184. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree.proto +0 -78
  185. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_service.proto +0 -189
  186. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_structure.proto +0 -29
  187. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments.proto +0 -417
  188. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments_service.proto +0 -72
  189. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/auth.proto +0 -25
  190. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/features.proto +0 -52
  191. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/lang.proto +0 -16
  192. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/legal.proto +0 -20
  193. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/media.proto +0 -149
  194. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/moderation.proto +0 -197
  195. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/safety.proto +0 -116
  196. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/time.proto +0 -25
  197. package/schema/.snootobuf/deps/reddit/coreplatform/domains/v1/domains_metadata_service.proto +0 -101
  198. package/schema/.snootobuf/deps/reddit/coreplatform/grpc_thrift/v1/grpc_thrift_options.proto +0 -34
  199. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links.proto +0 -798
  200. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links_service.proto +0 -186
  201. package/schema/.snootobuf/deps/reddit/coreplatform/messages/v1/messages.proto +0 -110
  202. package/schema/.snootobuf/deps/reddit/coreplatform/sensitive/v1/wrappers.proto +0 -51
  203. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit.proto +0 -1202
  204. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_member_relations.proto +0 -85
  205. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_moderator_service.proto +0 -363
  206. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_service.proto +0 -301
  207. package/schema/.snootobuf/deps/reddit/coreplatform/thing/v0/thing.proto +0 -2869
  208. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/custom_post.proto +0 -15
  209. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/service.proto +0 -11
  210. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/context_action.proto +0 -48
  211. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/manifest.proto +0 -70
  212. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/service.proto +0 -11
  213. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/acknowledge_order_delivery.proto +0 -17
  214. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/checkout.proto +0 -89
  215. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/common.proto +0 -322
  216. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/delete_products.proto +0 -17
  217. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/events.proto +0 -14
  218. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_batch_products.proto +0 -15
  219. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_gold_balances.proto +0 -48
  220. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_order.proto +0 -31
  221. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders.proto +0 -26
  222. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders_by_user.proto +0 -15
  223. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_payout_info_batch.proto +0 -52
  224. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_products.proto +0 -23
  225. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_user_profiles.proto +0 -28
  226. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/refund_order.proto +0 -17
  227. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service.proto +0 -49
  228. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service_data_compliance.proto +0 -20
  229. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/upsert_products.proto +0 -17
  230. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paygatewaypsps/v1/paygatewaypsps.proto +0 -158
  231. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payments_data_compliance.proto +0 -18
  232. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payorders.proto +0 -195
  233. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/admin.proto +0 -44
  234. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/ledger.proto +0 -200
  235. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/payments_data_compliance.proto +0 -18
  236. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/paypayments.proto +0 -210
  237. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +0 -189
  238. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +0 -135
  239. package/schema/.snootobuf/deps/snooron_sources/text_classification/text_classification.proto +0 -29
  240. package/schema/.snootobuf/deps/snooron_sources/v2_event/v2_event.proto +0 -3292
  241. package/schema/.snootobuf/deps/validate/validate.proto +0 -862
@@ -1,183 +0,0 @@
1
- // Copyright 2024 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
- syntax = "proto3";
16
-
17
- package google.api.expr.conformance.v1alpha1;
18
-
19
- import "google/api/client.proto";
20
- import "google/api/expr/v1alpha1/checked.proto";
21
- import "google/api/expr/v1alpha1/eval.proto";
22
- import "google/api/expr/v1alpha1/syntax.proto";
23
- import "google/rpc/status.proto";
24
-
25
- option cc_enable_arenas = true;
26
- option go_package = "google.golang.org/genproto/googleapis/api/expr/conformance/v1alpha1;confpb";
27
- option java_multiple_files = true;
28
- option java_outer_classname = "ConformanceServiceProto";
29
- option java_package = "com.google.api.expr.conformance.v1alpha1";
30
-
31
- // Access a CEL implementation from another process or machine.
32
- // A CEL implementation is decomposed as a parser, a static checker,
33
- // and an evaluator. Every CEL implementation is expected to provide
34
- // a server for this API. The API will be used for conformance testing
35
- // and other utilities.
36
- service ConformanceService {
37
- option (google.api.default_host) = "cel.googleapis.com";
38
-
39
- // Transforms CEL source text into a parsed representation.
40
- rpc Parse(ParseRequest) returns (ParseResponse) {
41
- }
42
-
43
- // Runs static checks on a parsed CEL representation and return
44
- // an annotated representation, or a set of issues.
45
- rpc Check(CheckRequest) returns (CheckResponse) {
46
- }
47
-
48
- // Evaluates a parsed or annotation CEL representation given
49
- // values of external bindings.
50
- rpc Eval(EvalRequest) returns (EvalResponse) {
51
- }
52
- }
53
-
54
- // Request message for the Parse method.
55
- message ParseRequest {
56
- // Required. Source text in CEL syntax.
57
- string cel_source = 1;
58
-
59
- // Tag for version of CEL syntax, for future use.
60
- string syntax_version = 2;
61
-
62
- // File or resource for source text, used in [SourceInfo][google.api.SourceInfo].
63
- string source_location = 3;
64
-
65
- // Prevent macro expansion. See "Macros" in Language Defiinition.
66
- bool disable_macros = 4;
67
- }
68
-
69
- // Response message for the Parse method.
70
- message ParseResponse {
71
- // The parsed representation, or unset if parsing failed.
72
- google.api.expr.v1alpha1.ParsedExpr parsed_expr = 1;
73
-
74
- // Any number of issues with [StatusDetails][] as the details.
75
- repeated google.rpc.Status issues = 2;
76
- }
77
-
78
- // Request message for the Check method.
79
- message CheckRequest {
80
- // Required. The parsed representation of the CEL program.
81
- google.api.expr.v1alpha1.ParsedExpr parsed_expr = 1;
82
-
83
- // Declarations of types for external variables and functions.
84
- // Required if program uses external variables or functions
85
- // not in the default environment.
86
- repeated google.api.expr.v1alpha1.Decl type_env = 2;
87
-
88
- // The protocol buffer context. See "Name Resolution" in the
89
- // Language Definition.
90
- string container = 3;
91
-
92
- // If true, use only the declarations in [type_env][google.api.expr.conformance.v1alpha1.CheckRequest.type_env]. If false (default),
93
- // add declarations for the standard definitions to the type environment. See
94
- // "Standard Definitions" in the Language Definition.
95
- bool no_std_env = 4;
96
- }
97
-
98
- // Response message for the Check method.
99
- message CheckResponse {
100
- // The annotated representation, or unset if checking failed.
101
- google.api.expr.v1alpha1.CheckedExpr checked_expr = 1;
102
-
103
- // Any number of issues with [StatusDetails][] as the details.
104
- repeated google.rpc.Status issues = 2;
105
- }
106
-
107
- // Request message for the Eval method.
108
- message EvalRequest {
109
- // Required. Either the parsed or annotated representation of the CEL program.
110
- oneof expr_kind {
111
- // Evaluate based on the parsed representation.
112
- google.api.expr.v1alpha1.ParsedExpr parsed_expr = 1;
113
-
114
- // Evaluate based on the checked representation.
115
- google.api.expr.v1alpha1.CheckedExpr checked_expr = 2;
116
- }
117
-
118
- // Bindings for the external variables. The types SHOULD be compatible
119
- // with the type environment in [CheckRequest][google.api.expr.conformance.v1alpha1.CheckRequest], if checked.
120
- map<string, google.api.expr.v1alpha1.ExprValue> bindings = 3;
121
-
122
- // SHOULD be the same container as used in [CheckRequest][google.api.expr.conformance.v1alpha1.CheckRequest], if checked.
123
- string container = 4;
124
- }
125
-
126
- // Response message for the Eval method.
127
- message EvalResponse {
128
- // The execution result, or unset if execution couldn't start.
129
- google.api.expr.v1alpha1.ExprValue result = 1;
130
-
131
- // Any number of issues with [StatusDetails][] as the details.
132
- // Note that CEL execution errors are reified into [ExprValue][].
133
- // Nevertheless, we'll allow out-of-band issues to be raised,
134
- // which also makes the replies more regular.
135
- repeated google.rpc.Status issues = 2;
136
- }
137
-
138
- // A specific position in source.
139
- message SourcePosition {
140
- // The source location name (e.g. file name).
141
- string location = 1;
142
-
143
- // The UTF-8 code unit offset.
144
- int32 offset = 2;
145
-
146
- // The 1-based index of the starting line in the source text
147
- // where the issue occurs, or 0 if unknown.
148
- int32 line = 3;
149
-
150
- // The 0-based index of the starting position within the line of source text
151
- // where the issue occurs. Only meaningful if line is nonzero.
152
- int32 column = 4;
153
- }
154
-
155
- // Warnings or errors in service execution are represented by
156
- // [google.rpc.Status][google.rpc.Status] messages, with the following message
157
- // in the details field.
158
- message IssueDetails {
159
- // Severities of issues.
160
- enum Severity {
161
- // An unspecified severity.
162
- SEVERITY_UNSPECIFIED = 0;
163
-
164
- // Deprecation issue for statements and method that may no longer be
165
- // supported or maintained.
166
- DEPRECATION = 1;
167
-
168
- // Warnings such as: unused variables.
169
- WARNING = 2;
170
-
171
- // Errors such as: unmatched curly braces or variable redefinition.
172
- ERROR = 3;
173
- }
174
-
175
- // The severity of the issue.
176
- Severity severity = 1;
177
-
178
- // Position in the source, if known.
179
- SourcePosition position = 2;
180
-
181
- // Expression ID from [Expr][], 0 if unknown.
182
- int64 id = 3;
183
- }
@@ -1,343 +0,0 @@
1
- // Copyright 2024 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
- syntax = "proto3";
16
-
17
- package google.api.expr.v1alpha1;
18
-
19
- import "google/api/expr/v1alpha1/syntax.proto";
20
- import "google/protobuf/empty.proto";
21
- import "google/protobuf/struct.proto";
22
-
23
- option cc_enable_arenas = true;
24
- option go_package = "google.golang.org/genproto/googleapis/api/expr/v1alpha1;expr";
25
- option java_multiple_files = true;
26
- option java_outer_classname = "DeclProto";
27
- option java_package = "com.google.api.expr.v1alpha1";
28
-
29
- // Protos for representing CEL declarations and typed checked expressions.
30
-
31
- // A CEL expression which has been successfully type checked.
32
- message CheckedExpr {
33
- // A map from expression ids to resolved references.
34
- //
35
- // The following entries are in this table:
36
- //
37
- // - An Ident or Select expression is represented here if it resolves to a
38
- // declaration. For instance, if `a.b.c` is represented by
39
- // `select(select(id(a), b), c)`, and `a.b` resolves to a declaration,
40
- // while `c` is a field selection, then the reference is attached to the
41
- // nested select expression (but not to the id or or the outer select).
42
- // In turn, if `a` resolves to a declaration and `b.c` are field selections,
43
- // the reference is attached to the ident expression.
44
- // - Every Call expression has an entry here, identifying the function being
45
- // called.
46
- // - Every CreateStruct expression for a message has an entry, identifying
47
- // the message.
48
- map<int64, Reference> reference_map = 2;
49
-
50
- // A map from expression ids to types.
51
- //
52
- // Every expression node which has a type different than DYN has a mapping
53
- // here. If an expression has type DYN, it is omitted from this map to save
54
- // space.
55
- map<int64, Type> type_map = 3;
56
-
57
- // The source info derived from input that generated the parsed `expr` and
58
- // any optimizations made during the type-checking pass.
59
- SourceInfo source_info = 5;
60
-
61
- // The expr version indicates the major / minor version number of the `expr`
62
- // representation.
63
- //
64
- // The most common reason for a version change will be to indicate to the CEL
65
- // runtimes that transformations have been performed on the expr during static
66
- // analysis. In some cases, this will save the runtime the work of applying
67
- // the same or similar transformations prior to evaluation.
68
- string expr_version = 6;
69
-
70
- // The checked expression. Semantically equivalent to the parsed `expr`, but
71
- // may have structural differences.
72
- Expr expr = 4;
73
- }
74
-
75
- // Represents a CEL type.
76
- message Type {
77
- // List type with typed elements, e.g. `list<example.proto.MyMessage>`.
78
- message ListType {
79
- // The element type.
80
- Type elem_type = 1;
81
- }
82
-
83
- // Map type with parameterized key and value types, e.g. `map<string, int>`.
84
- message MapType {
85
- // The type of the key.
86
- Type key_type = 1;
87
-
88
- // The type of the value.
89
- Type value_type = 2;
90
- }
91
-
92
- // Function type with result and arg types.
93
- message FunctionType {
94
- // Result type of the function.
95
- Type result_type = 1;
96
-
97
- // Argument types of the function.
98
- repeated Type arg_types = 2;
99
- }
100
-
101
- // Application defined abstract type.
102
- message AbstractType {
103
- // The fully qualified name of this abstract type.
104
- string name = 1;
105
-
106
- // Parameter types for this abstract type.
107
- repeated Type parameter_types = 2;
108
- }
109
-
110
- // CEL primitive types.
111
- enum PrimitiveType {
112
- // Unspecified type.
113
- PRIMITIVE_TYPE_UNSPECIFIED = 0;
114
-
115
- // Boolean type.
116
- BOOL = 1;
117
-
118
- // Int64 type.
119
- //
120
- // Proto-based integer values are widened to int64.
121
- INT64 = 2;
122
-
123
- // Uint64 type.
124
- //
125
- // Proto-based unsigned integer values are widened to uint64.
126
- UINT64 = 3;
127
-
128
- // Double type.
129
- //
130
- // Proto-based float values are widened to double values.
131
- DOUBLE = 4;
132
-
133
- // String type.
134
- STRING = 5;
135
-
136
- // Bytes type.
137
- BYTES = 6;
138
- }
139
-
140
- // Well-known protobuf types treated with first-class support in CEL.
141
- enum WellKnownType {
142
- // Unspecified type.
143
- WELL_KNOWN_TYPE_UNSPECIFIED = 0;
144
-
145
- // Well-known protobuf.Any type.
146
- //
147
- // Any types are a polymorphic message type. During type-checking they are
148
- // treated like `DYN` types, but at runtime they are resolved to a specific
149
- // message type specified at evaluation time.
150
- ANY = 1;
151
-
152
- // Well-known protobuf.Timestamp type, internally referenced as `timestamp`.
153
- TIMESTAMP = 2;
154
-
155
- // Well-known protobuf.Duration type, internally referenced as `duration`.
156
- DURATION = 3;
157
- }
158
-
159
- // The kind of type.
160
- oneof type_kind {
161
- // Dynamic type.
162
- google.protobuf.Empty dyn = 1;
163
-
164
- // Null value.
165
- google.protobuf.NullValue null = 2;
166
-
167
- // Primitive types: `true`, `1u`, `-2.0`, `'string'`, `b'bytes'`.
168
- PrimitiveType primitive = 3;
169
-
170
- // Wrapper of a primitive type, e.g. `google.protobuf.Int64Value`.
171
- PrimitiveType wrapper = 4;
172
-
173
- // Well-known protobuf type such as `google.protobuf.Timestamp`.
174
- WellKnownType well_known = 5;
175
-
176
- // Parameterized list with elements of `list_type`, e.g. `list<timestamp>`.
177
- ListType list_type = 6;
178
-
179
- // Parameterized map with typed keys and values.
180
- MapType map_type = 7;
181
-
182
- // Function type.
183
- FunctionType function = 8;
184
-
185
- // Protocol buffer message type.
186
- //
187
- // The `message_type` string specifies the qualified message type name. For
188
- // example, `google.plus.Profile`.
189
- string message_type = 9;
190
-
191
- // Type param type.
192
- //
193
- // The `type_param` string specifies the type parameter name, e.g. `list<E>`
194
- // would be a `list_type` whose element type was a `type_param` type
195
- // named `E`.
196
- string type_param = 10;
197
-
198
- // Type type.
199
- //
200
- // The `type` value specifies the target type. e.g. int is type with a
201
- // target type of `Primitive.INT`.
202
- Type type = 11;
203
-
204
- // Error type.
205
- //
206
- // During type-checking if an expression is an error, its type is propagated
207
- // as the `ERROR` type. This permits the type-checker to discover other
208
- // errors present in the expression.
209
- google.protobuf.Empty error = 12;
210
-
211
- // Abstract, application defined type.
212
- AbstractType abstract_type = 14;
213
- }
214
- }
215
-
216
- // Represents a declaration of a named value or function.
217
- //
218
- // A declaration is part of the contract between the expression, the agent
219
- // evaluating that expression, and the caller requesting evaluation.
220
- message Decl {
221
- // Identifier declaration which specifies its type and optional `Expr` value.
222
- //
223
- // An identifier without a value is a declaration that must be provided at
224
- // evaluation time. An identifier with a value should resolve to a constant,
225
- // but may be used in conjunction with other identifiers bound at evaluation
226
- // time.
227
- message IdentDecl {
228
- // Required. The type of the identifier.
229
- Type type = 1;
230
-
231
- // The constant value of the identifier. If not specified, the identifier
232
- // must be supplied at evaluation time.
233
- Constant value = 2;
234
-
235
- // Documentation string for the identifier.
236
- string doc = 3;
237
- }
238
-
239
- // Function declaration specifies one or more overloads which indicate the
240
- // function's parameter types and return type.
241
- //
242
- // Functions have no observable side-effects (there may be side-effects like
243
- // logging which are not observable from CEL).
244
- message FunctionDecl {
245
- // An overload indicates a function's parameter types and return type, and
246
- // may optionally include a function body described in terms of
247
- // [Expr][google.api.expr.v1alpha1.Expr] values.
248
- //
249
- // Functions overloads are declared in either a function or method
250
- // call-style. For methods, the `params[0]` is the expected type of the
251
- // target receiver.
252
- //
253
- // Overloads must have non-overlapping argument types after erasure of all
254
- // parameterized type variables (similar as type erasure in Java).
255
- message Overload {
256
- // Required. Globally unique overload name of the function which reflects
257
- // the function name and argument types.
258
- //
259
- // This will be used by a [Reference][google.api.expr.v1alpha1.Reference]
260
- // to indicate the `overload_id` that was resolved for the function
261
- // `name`.
262
- string overload_id = 1;
263
-
264
- // List of function parameter [Type][google.api.expr.v1alpha1.Type]
265
- // values.
266
- //
267
- // Param types are disjoint after generic type parameters have been
268
- // replaced with the type `DYN`. Since the `DYN` type is compatible with
269
- // any other type, this means that if `A` is a type parameter, the
270
- // function types `int<A>` and `int<int>` are not disjoint. Likewise,
271
- // `map<string, string>` is not disjoint from `map<K, V>`.
272
- //
273
- // When the `result_type` of a function is a generic type param, the
274
- // type param name also appears as the `type` of on at least one params.
275
- repeated Type params = 2;
276
-
277
- // The type param names associated with the function declaration.
278
- //
279
- // For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
280
- // the type params of `K, V`.
281
- repeated string type_params = 3;
282
-
283
- // Required. The result type of the function. For example, the operator
284
- // `string.isEmpty()` would have `result_type` of `kind: BOOL`.
285
- Type result_type = 4;
286
-
287
- // Whether the function is to be used in a method call-style `x.f(...)`
288
- // or a function call-style `f(x, ...)`.
289
- //
290
- // For methods, the first parameter declaration, `params[0]` is the
291
- // expected type of the target receiver.
292
- bool is_instance_function = 5;
293
-
294
- // Documentation string for the overload.
295
- string doc = 6;
296
- }
297
-
298
- // Required. List of function overloads, must contain at least one overload.
299
- repeated Overload overloads = 1;
300
- }
301
-
302
- // The fully qualified name of the declaration.
303
- //
304
- // Declarations are organized in containers and this represents the full path
305
- // to the declaration in its container, as in `google.api.expr.Decl`.
306
- //
307
- // Declarations used as
308
- // [FunctionDecl.Overload][google.api.expr.v1alpha1.Decl.FunctionDecl.Overload]
309
- // parameters may or may not have a name depending on whether the overload is
310
- // function declaration or a function definition containing a result
311
- // [Expr][google.api.expr.v1alpha1.Expr].
312
- string name = 1;
313
-
314
- // Required. The declaration kind.
315
- oneof decl_kind {
316
- // Identifier declaration.
317
- IdentDecl ident = 2;
318
-
319
- // Function declaration.
320
- FunctionDecl function = 3;
321
- }
322
- }
323
-
324
- // Describes a resolved reference to a declaration.
325
- message Reference {
326
- // The fully qualified name of the declaration.
327
- string name = 1;
328
-
329
- // For references to functions, this is a list of `Overload.overload_id`
330
- // values which match according to typing rules.
331
- //
332
- // If the list has more than one element, overload resolution among the
333
- // presented candidates must happen at runtime because of dynamic types. The
334
- // type checker attempts to narrow down this list as much as possible.
335
- //
336
- // Empty if this is not a reference to a
337
- // [Decl.FunctionDecl][google.api.expr.v1alpha1.Decl.FunctionDecl].
338
- repeated string overload_id = 3;
339
-
340
- // For references to constants, this may contain the value of the
341
- // constant if known at compile time.
342
- Constant value = 4;
343
- }
@@ -1,118 +0,0 @@
1
- // Copyright 2024 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
- syntax = "proto3";
16
-
17
- package google.api.expr.v1alpha1;
18
-
19
- import "google/api/expr/v1alpha1/value.proto";
20
- import "google/rpc/status.proto";
21
-
22
- option cc_enable_arenas = true;
23
- option go_package = "google.golang.org/genproto/googleapis/api/expr/v1alpha1;expr";
24
- option java_multiple_files = true;
25
- option java_outer_classname = "EvalProto";
26
- option java_package = "com.google.api.expr.v1alpha1";
27
-
28
- // The state of an evaluation.
29
- //
30
- // Can represent an inital, partial, or completed state of evaluation.
31
- message EvalState {
32
- // A single evalution result.
33
- message Result {
34
- // The id of the expression this result if for.
35
- int64 expr = 1;
36
-
37
- // The index in `values` of the resulting value.
38
- int64 value = 2;
39
- }
40
-
41
- // The unique values referenced in this message.
42
- repeated ExprValue values = 1;
43
-
44
- // An ordered list of results.
45
- //
46
- // Tracks the flow of evaluation through the expression.
47
- // May be sparse.
48
- repeated Result results = 3;
49
- }
50
-
51
- // The value of an evaluated expression.
52
- message ExprValue {
53
- // An expression can resolve to a value, error or unknown.
54
- oneof kind {
55
- // A concrete value.
56
- Value value = 1;
57
-
58
- // The set of errors in the critical path of evalution.
59
- //
60
- // Only errors in the critical path are included. For example,
61
- // `(<error1> || true) && <error2>` will only result in `<error2>`,
62
- // while `<error1> || <error2>` will result in both `<error1>` and
63
- // `<error2>`.
64
- //
65
- // Errors cause by the presence of other errors are not included in the
66
- // set. For example `<error1>.foo`, `foo(<error1>)`, and `<error1> + 1` will
67
- // only result in `<error1>`.
68
- //
69
- // Multiple errors *might* be included when evaluation could result
70
- // in different errors. For example `<error1> + <error2>` and
71
- // `foo(<error1>, <error2>)` may result in `<error1>`, `<error2>` or both.
72
- // The exact subset of errors included for this case is unspecified and
73
- // depends on the implementation details of the evaluator.
74
- ErrorSet error = 2;
75
-
76
- // The set of unknowns in the critical path of evaluation.
77
- //
78
- // Unknown behaves identically to Error with regards to propagation.
79
- // Specifically, only unknowns in the critical path are included, unknowns
80
- // caused by the presence of other unknowns are not included, and multiple
81
- // unknowns *might* be included included when evaluation could result in
82
- // different unknowns. For example:
83
- //
84
- // (<unknown[1]> || true) && <unknown[2]> -> <unknown[2]>
85
- // <unknown[1]> || <unknown[2]> -> <unknown[1,2]>
86
- // <unknown[1]>.foo -> <unknown[1]>
87
- // foo(<unknown[1]>) -> <unknown[1]>
88
- // <unknown[1]> + <unknown[2]> -> <unknown[1]> or <unknown[2[>
89
- //
90
- // Unknown takes precidence over Error in cases where a `Value` can short
91
- // circuit the result:
92
- //
93
- // <error> || <unknown> -> <unknown>
94
- // <error> && <unknown> -> <unknown>
95
- //
96
- // Errors take precidence in all other cases:
97
- //
98
- // <unknown> + <error> -> <error>
99
- // foo(<unknown>, <error>) -> <error>
100
- UnknownSet unknown = 3;
101
- }
102
- }
103
-
104
- // A set of errors.
105
- //
106
- // The errors included depend on the context. See `ExprValue.error`.
107
- message ErrorSet {
108
- // The errors in the set.
109
- repeated google.rpc.Status errors = 1;
110
- }
111
-
112
- // A set of expressions for which the value is unknown.
113
- //
114
- // The unknowns included depend on the context. See `ExprValue.unknown`.
115
- message UnknownSet {
116
- // The ids of the expressions with unknown values.
117
- repeated int64 exprs = 1;
118
- }
@@ -1,53 +0,0 @@
1
- // Copyright 2024 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
- syntax = "proto3";
16
-
17
- package google.api.expr.v1alpha1;
18
-
19
- import "google/api/expr/v1alpha1/value.proto";
20
-
21
- option cc_enable_arenas = true;
22
- option go_package = "google.golang.org/genproto/googleapis/api/expr/v1alpha1;expr";
23
- option java_multiple_files = true;
24
- option java_outer_classname = "ExplainProto";
25
- option java_package = "com.google.api.expr.v1alpha1";
26
-
27
- // Values of intermediate expressions produced when evaluating expression.
28
- // Deprecated, use `EvalState` instead.
29
- message Explain {
30
- option deprecated = true;
31
-
32
- // ID and value index of one step.
33
- message ExprStep {
34
- // ID of corresponding Expr node.
35
- int64 id = 1;
36
-
37
- // Index of the value in the values list.
38
- int32 value_index = 2;
39
- }
40
-
41
- // All of the observed values.
42
- //
43
- // The field value_index is an index in the values list.
44
- // Separating values from steps is needed to remove redundant values.
45
- repeated Value values = 1;
46
-
47
- // List of steps.
48
- //
49
- // Repeated evaluations of the same expression generate new ExprStep
50
- // instances. The order of such ExprStep instances matches the order of
51
- // elements returned by Comprehension.iter_range.
52
- repeated ExprStep expr_steps = 2;
53
- }