planetscale 0.3.1 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +9 -1
  3. data/.github/workflows/gem-push.yml +9 -2
  4. data/.licenses/go/github.com/matoous/go-nanoid/v2.dep.yml +34 -0
  5. data/.licenses/go/github.com/planetscale/planetscale-go/planetscale.dep.yml +1 -1
  6. data/.licenses/go/github.com/planetscale/sql-proxy/proxy.dep.yml +1 -1
  7. data/.licenses/go/go.uber.org/zap/buffer.dep.yml +1 -1
  8. data/.licenses/go/go.uber.org/zap/internal/bufferpool.dep.yml +1 -1
  9. data/.licenses/go/go.uber.org/zap/internal/color.dep.yml +1 -1
  10. data/.licenses/go/go.uber.org/zap/internal/exit.dep.yml +1 -1
  11. data/.licenses/go/go.uber.org/zap/zapcore.dep.yml +1 -1
  12. data/.licenses/go/go.uber.org/zap.dep.yml +1 -1
  13. data/README.md +2 -0
  14. data/controller.go +21 -36
  15. data/go.mod +4 -3
  16. data/go.sum +32 -18
  17. data/lib/planetscale/version.rb +1 -1
  18. data/lib/planetscale.rb +2 -3
  19. data/planetscale.gemspec +1 -1
  20. data/proxy/planetscale-darwin.h +1 -1
  21. data/proxy/planetscale-darwin.so +0 -0
  22. data/proxy/planetscale-linux.h +1 -1
  23. data/proxy/planetscale-linux.so +0 -0
  24. data/proxy.go +1 -5
  25. metadata +3 -345
  26. data/vendor/github.com/armon/circbuf/.gitignore +0 -22
  27. data/vendor/github.com/armon/circbuf/LICENSE +0 -20
  28. data/vendor/github.com/armon/circbuf/README.md +0 -28
  29. data/vendor/github.com/armon/circbuf/circbuf.go +0 -92
  30. data/vendor/github.com/armon/circbuf/go.mod +0 -1
  31. data/vendor/github.com/golang/protobuf/AUTHORS +0 -3
  32. data/vendor/github.com/golang/protobuf/CONTRIBUTORS +0 -3
  33. data/vendor/github.com/golang/protobuf/LICENSE +0 -28
  34. data/vendor/github.com/golang/protobuf/proto/buffer.go +0 -324
  35. data/vendor/github.com/golang/protobuf/proto/defaults.go +0 -63
  36. data/vendor/github.com/golang/protobuf/proto/deprecated.go +0 -113
  37. data/vendor/github.com/golang/protobuf/proto/discard.go +0 -58
  38. data/vendor/github.com/golang/protobuf/proto/extensions.go +0 -356
  39. data/vendor/github.com/golang/protobuf/proto/properties.go +0 -306
  40. data/vendor/github.com/golang/protobuf/proto/proto.go +0 -167
  41. data/vendor/github.com/golang/protobuf/proto/registry.go +0 -317
  42. data/vendor/github.com/golang/protobuf/proto/text_decode.go +0 -801
  43. data/vendor/github.com/golang/protobuf/proto/text_encode.go +0 -560
  44. data/vendor/github.com/golang/protobuf/proto/wire.go +0 -78
  45. data/vendor/github.com/golang/protobuf/proto/wrappers.go +0 -34
  46. data/vendor/github.com/gorilla/mux/AUTHORS +0 -8
  47. data/vendor/github.com/gorilla/mux/LICENSE +0 -27
  48. data/vendor/github.com/gorilla/mux/README.md +0 -805
  49. data/vendor/github.com/gorilla/mux/doc.go +0 -306
  50. data/vendor/github.com/gorilla/mux/go.mod +0 -3
  51. data/vendor/github.com/gorilla/mux/middleware.go +0 -74
  52. data/vendor/github.com/gorilla/mux/mux.go +0 -606
  53. data/vendor/github.com/gorilla/mux/regexp.go +0 -388
  54. data/vendor/github.com/gorilla/mux/route.go +0 -736
  55. data/vendor/github.com/gorilla/mux/test_helpers.go +0 -19
  56. data/vendor/github.com/hashicorp/go-cleanhttp/LICENSE +0 -363
  57. data/vendor/github.com/hashicorp/go-cleanhttp/README.md +0 -30
  58. data/vendor/github.com/hashicorp/go-cleanhttp/cleanhttp.go +0 -58
  59. data/vendor/github.com/hashicorp/go-cleanhttp/doc.go +0 -20
  60. data/vendor/github.com/hashicorp/go-cleanhttp/go.mod +0 -3
  61. data/vendor/github.com/hashicorp/go-cleanhttp/handlers.go +0 -48
  62. data/vendor/github.com/mitchellh/go-homedir/LICENSE +0 -21
  63. data/vendor/github.com/mitchellh/go-homedir/README.md +0 -14
  64. data/vendor/github.com/mitchellh/go-homedir/go.mod +0 -1
  65. data/vendor/github.com/mitchellh/go-homedir/homedir.go +0 -167
  66. data/vendor/github.com/pkg/errors/.gitignore +0 -24
  67. data/vendor/github.com/pkg/errors/.travis.yml +0 -10
  68. data/vendor/github.com/pkg/errors/LICENSE +0 -23
  69. data/vendor/github.com/pkg/errors/Makefile +0 -44
  70. data/vendor/github.com/pkg/errors/README.md +0 -59
  71. data/vendor/github.com/pkg/errors/appveyor.yml +0 -32
  72. data/vendor/github.com/pkg/errors/errors.go +0 -288
  73. data/vendor/github.com/pkg/errors/go113.go +0 -38
  74. data/vendor/github.com/pkg/errors/stack.go +0 -177
  75. data/vendor/github.com/planetscale/planetscale-go/LICENSE +0 -202
  76. data/vendor/github.com/planetscale/planetscale-go/planetscale/audit_logs.go +0 -136
  77. data/vendor/github.com/planetscale/planetscale-go/planetscale/backups.go +0 -139
  78. data/vendor/github.com/planetscale/planetscale-go/planetscale/branches.go +0 -252
  79. data/vendor/github.com/planetscale/planetscale-go/planetscale/certs.go +0 -166
  80. data/vendor/github.com/planetscale/planetscale-go/planetscale/client.go +0 -312
  81. data/vendor/github.com/planetscale/planetscale-go/planetscale/databases.go +0 -133
  82. data/vendor/github.com/planetscale/planetscale-go/planetscale/deploy_requests.go +0 -368
  83. data/vendor/github.com/planetscale/planetscale-go/planetscale/organizations.go +0 -103
  84. data/vendor/github.com/planetscale/planetscale-go/planetscale/regions.go +0 -52
  85. data/vendor/github.com/planetscale/planetscale-go/planetscale/service_tokens.go +0 -163
  86. data/vendor/github.com/planetscale/sql-proxy/LICENSE +0 -202
  87. data/vendor/github.com/planetscale/sql-proxy/proxy/client.go +0 -476
  88. data/vendor/github.com/planetscale/sql-proxy/proxy/tls_cache.go +0 -73
  89. data/vendor/go.uber.org/atomic/.codecov.yml +0 -19
  90. data/vendor/go.uber.org/atomic/.gitignore +0 -12
  91. data/vendor/go.uber.org/atomic/.travis.yml +0 -27
  92. data/vendor/go.uber.org/atomic/CHANGELOG.md +0 -76
  93. data/vendor/go.uber.org/atomic/LICENSE.txt +0 -19
  94. data/vendor/go.uber.org/atomic/Makefile +0 -78
  95. data/vendor/go.uber.org/atomic/README.md +0 -63
  96. data/vendor/go.uber.org/atomic/bool.go +0 -81
  97. data/vendor/go.uber.org/atomic/bool_ext.go +0 -53
  98. data/vendor/go.uber.org/atomic/doc.go +0 -23
  99. data/vendor/go.uber.org/atomic/duration.go +0 -82
  100. data/vendor/go.uber.org/atomic/duration_ext.go +0 -40
  101. data/vendor/go.uber.org/atomic/error.go +0 -51
  102. data/vendor/go.uber.org/atomic/error_ext.go +0 -39
  103. data/vendor/go.uber.org/atomic/float64.go +0 -76
  104. data/vendor/go.uber.org/atomic/float64_ext.go +0 -47
  105. data/vendor/go.uber.org/atomic/gen.go +0 -26
  106. data/vendor/go.uber.org/atomic/go.mod +0 -8
  107. data/vendor/go.uber.org/atomic/go.sum +0 -9
  108. data/vendor/go.uber.org/atomic/int32.go +0 -102
  109. data/vendor/go.uber.org/atomic/int64.go +0 -102
  110. data/vendor/go.uber.org/atomic/nocmp.go +0 -35
  111. data/vendor/go.uber.org/atomic/string.go +0 -54
  112. data/vendor/go.uber.org/atomic/string_ext.go +0 -43
  113. data/vendor/go.uber.org/atomic/uint32.go +0 -102
  114. data/vendor/go.uber.org/atomic/uint64.go +0 -102
  115. data/vendor/go.uber.org/atomic/value.go +0 -31
  116. data/vendor/go.uber.org/multierr/.codecov.yml +0 -15
  117. data/vendor/go.uber.org/multierr/.gitignore +0 -4
  118. data/vendor/go.uber.org/multierr/.travis.yml +0 -23
  119. data/vendor/go.uber.org/multierr/CHANGELOG.md +0 -60
  120. data/vendor/go.uber.org/multierr/LICENSE.txt +0 -19
  121. data/vendor/go.uber.org/multierr/Makefile +0 -42
  122. data/vendor/go.uber.org/multierr/README.md +0 -23
  123. data/vendor/go.uber.org/multierr/error.go +0 -449
  124. data/vendor/go.uber.org/multierr/glide.yaml +0 -8
  125. data/vendor/go.uber.org/multierr/go.mod +0 -8
  126. data/vendor/go.uber.org/multierr/go.sum +0 -11
  127. data/vendor/go.uber.org/multierr/go113.go +0 -52
  128. data/vendor/go.uber.org/zap/.codecov.yml +0 -17
  129. data/vendor/go.uber.org/zap/.gitignore +0 -32
  130. data/vendor/go.uber.org/zap/.readme.tmpl +0 -109
  131. data/vendor/go.uber.org/zap/CHANGELOG.md +0 -492
  132. data/vendor/go.uber.org/zap/CODE_OF_CONDUCT.md +0 -75
  133. data/vendor/go.uber.org/zap/CONTRIBUTING.md +0 -75
  134. data/vendor/go.uber.org/zap/FAQ.md +0 -164
  135. data/vendor/go.uber.org/zap/LICENSE.txt +0 -19
  136. data/vendor/go.uber.org/zap/Makefile +0 -73
  137. data/vendor/go.uber.org/zap/README.md +0 -134
  138. data/vendor/go.uber.org/zap/array.go +0 -320
  139. data/vendor/go.uber.org/zap/buffer/buffer.go +0 -141
  140. data/vendor/go.uber.org/zap/buffer/pool.go +0 -49
  141. data/vendor/go.uber.org/zap/checklicense.sh +0 -17
  142. data/vendor/go.uber.org/zap/config.go +0 -264
  143. data/vendor/go.uber.org/zap/doc.go +0 -113
  144. data/vendor/go.uber.org/zap/encoder.go +0 -79
  145. data/vendor/go.uber.org/zap/error.go +0 -80
  146. data/vendor/go.uber.org/zap/field.go +0 -549
  147. data/vendor/go.uber.org/zap/flag.go +0 -39
  148. data/vendor/go.uber.org/zap/glide.yaml +0 -34
  149. data/vendor/go.uber.org/zap/global.go +0 -168
  150. data/vendor/go.uber.org/zap/global_go112.go +0 -26
  151. data/vendor/go.uber.org/zap/global_prego112.go +0 -26
  152. data/vendor/go.uber.org/zap/go.mod +0 -14
  153. data/vendor/go.uber.org/zap/go.sum +0 -54
  154. data/vendor/go.uber.org/zap/http_handler.go +0 -132
  155. data/vendor/go.uber.org/zap/internal/bufferpool/bufferpool.go +0 -31
  156. data/vendor/go.uber.org/zap/internal/color/color.go +0 -44
  157. data/vendor/go.uber.org/zap/internal/exit/exit.go +0 -64
  158. data/vendor/go.uber.org/zap/level.go +0 -132
  159. data/vendor/go.uber.org/zap/logger.go +0 -348
  160. data/vendor/go.uber.org/zap/options.go +0 -148
  161. data/vendor/go.uber.org/zap/sink.go +0 -161
  162. data/vendor/go.uber.org/zap/stacktrace.go +0 -85
  163. data/vendor/go.uber.org/zap/sugar.go +0 -315
  164. data/vendor/go.uber.org/zap/time.go +0 -27
  165. data/vendor/go.uber.org/zap/writer.go +0 -99
  166. data/vendor/go.uber.org/zap/zapcore/buffered_write_syncer.go +0 -188
  167. data/vendor/go.uber.org/zap/zapcore/clock.go +0 -50
  168. data/vendor/go.uber.org/zap/zapcore/console_encoder.go +0 -161
  169. data/vendor/go.uber.org/zap/zapcore/core.go +0 -113
  170. data/vendor/go.uber.org/zap/zapcore/doc.go +0 -24
  171. data/vendor/go.uber.org/zap/zapcore/encoder.go +0 -443
  172. data/vendor/go.uber.org/zap/zapcore/entry.go +0 -264
  173. data/vendor/go.uber.org/zap/zapcore/error.go +0 -132
  174. data/vendor/go.uber.org/zap/zapcore/field.go +0 -233
  175. data/vendor/go.uber.org/zap/zapcore/hook.go +0 -68
  176. data/vendor/go.uber.org/zap/zapcore/increase_level.go +0 -66
  177. data/vendor/go.uber.org/zap/zapcore/json_encoder.go +0 -534
  178. data/vendor/go.uber.org/zap/zapcore/level.go +0 -175
  179. data/vendor/go.uber.org/zap/zapcore/level_strings.go +0 -46
  180. data/vendor/go.uber.org/zap/zapcore/marshaler.go +0 -61
  181. data/vendor/go.uber.org/zap/zapcore/memory_encoder.go +0 -179
  182. data/vendor/go.uber.org/zap/zapcore/sampler.go +0 -208
  183. data/vendor/go.uber.org/zap/zapcore/tee.go +0 -81
  184. data/vendor/go.uber.org/zap/zapcore/write_syncer.go +0 -122
  185. data/vendor/golang.org/x/net/AUTHORS +0 -3
  186. data/vendor/golang.org/x/net/CONTRIBUTORS +0 -3
  187. data/vendor/golang.org/x/net/LICENSE +0 -27
  188. data/vendor/golang.org/x/net/PATENTS +0 -22
  189. data/vendor/golang.org/x/net/context/context.go +0 -56
  190. data/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go +0 -71
  191. data/vendor/golang.org/x/net/context/go17.go +0 -73
  192. data/vendor/golang.org/x/net/context/go19.go +0 -21
  193. data/vendor/golang.org/x/net/context/pre_go17.go +0 -301
  194. data/vendor/golang.org/x/net/context/pre_go19.go +0 -110
  195. data/vendor/golang.org/x/oauth2/.travis.yml +0 -13
  196. data/vendor/golang.org/x/oauth2/AUTHORS +0 -3
  197. data/vendor/golang.org/x/oauth2/CONTRIBUTING.md +0 -26
  198. data/vendor/golang.org/x/oauth2/CONTRIBUTORS +0 -3
  199. data/vendor/golang.org/x/oauth2/LICENSE +0 -27
  200. data/vendor/golang.org/x/oauth2/README.md +0 -36
  201. data/vendor/golang.org/x/oauth2/go.mod +0 -9
  202. data/vendor/golang.org/x/oauth2/go.sum +0 -361
  203. data/vendor/golang.org/x/oauth2/internal/client_appengine.go +0 -14
  204. data/vendor/golang.org/x/oauth2/internal/doc.go +0 -6
  205. data/vendor/golang.org/x/oauth2/internal/oauth2.go +0 -37
  206. data/vendor/golang.org/x/oauth2/internal/token.go +0 -294
  207. data/vendor/golang.org/x/oauth2/internal/transport.go +0 -33
  208. data/vendor/golang.org/x/oauth2/oauth2.go +0 -381
  209. data/vendor/golang.org/x/oauth2/token.go +0 -178
  210. data/vendor/golang.org/x/oauth2/transport.go +0 -89
  211. data/vendor/google.golang.org/appengine/LICENSE +0 -202
  212. data/vendor/google.golang.org/appengine/internal/api.go +0 -678
  213. data/vendor/google.golang.org/appengine/internal/api_classic.go +0 -169
  214. data/vendor/google.golang.org/appengine/internal/api_common.go +0 -123
  215. data/vendor/google.golang.org/appengine/internal/app_id.go +0 -28
  216. data/vendor/google.golang.org/appengine/internal/base/api_base.pb.go +0 -308
  217. data/vendor/google.golang.org/appengine/internal/base/api_base.proto +0 -33
  218. data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.pb.go +0 -4367
  219. data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.proto +0 -551
  220. data/vendor/google.golang.org/appengine/internal/identity.go +0 -55
  221. data/vendor/google.golang.org/appengine/internal/identity_classic.go +0 -61
  222. data/vendor/google.golang.org/appengine/internal/identity_flex.go +0 -11
  223. data/vendor/google.golang.org/appengine/internal/identity_vm.go +0 -134
  224. data/vendor/google.golang.org/appengine/internal/internal.go +0 -110
  225. data/vendor/google.golang.org/appengine/internal/log/log_service.pb.go +0 -1313
  226. data/vendor/google.golang.org/appengine/internal/log/log_service.proto +0 -150
  227. data/vendor/google.golang.org/appengine/internal/main.go +0 -16
  228. data/vendor/google.golang.org/appengine/internal/main_common.go +0 -7
  229. data/vendor/google.golang.org/appengine/internal/main_vm.go +0 -69
  230. data/vendor/google.golang.org/appengine/internal/metadata.go +0 -60
  231. data/vendor/google.golang.org/appengine/internal/net.go +0 -56
  232. data/vendor/google.golang.org/appengine/internal/regen.sh +0 -40
  233. data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.pb.go +0 -361
  234. data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.proto +0 -44
  235. data/vendor/google.golang.org/appengine/internal/transaction.go +0 -115
  236. data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.pb.go +0 -527
  237. data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.proto +0 -64
  238. data/vendor/google.golang.org/appengine/urlfetch/urlfetch.go +0 -210
  239. data/vendor/google.golang.org/protobuf/AUTHORS +0 -3
  240. data/vendor/google.golang.org/protobuf/CONTRIBUTORS +0 -3
  241. data/vendor/google.golang.org/protobuf/LICENSE +0 -27
  242. data/vendor/google.golang.org/protobuf/PATENTS +0 -22
  243. data/vendor/google.golang.org/protobuf/encoding/prototext/decode.go +0 -773
  244. data/vendor/google.golang.org/protobuf/encoding/prototext/doc.go +0 -7
  245. data/vendor/google.golang.org/protobuf/encoding/prototext/encode.go +0 -371
  246. data/vendor/google.golang.org/protobuf/encoding/protowire/wire.go +0 -538
  247. data/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go +0 -318
  248. data/vendor/google.golang.org/protobuf/internal/descopts/options.go +0 -29
  249. data/vendor/google.golang.org/protobuf/internal/detrand/rand.go +0 -69
  250. data/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go +0 -213
  251. data/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go +0 -241
  252. data/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go +0 -207
  253. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go +0 -665
  254. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go +0 -190
  255. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go +0 -161
  256. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go +0 -373
  257. data/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go +0 -29
  258. data/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go +0 -265
  259. data/vendor/google.golang.org/protobuf/internal/errors/errors.go +0 -89
  260. data/vendor/google.golang.org/protobuf/internal/errors/is_go112.go +0 -39
  261. data/vendor/google.golang.org/protobuf/internal/errors/is_go113.go +0 -12
  262. data/vendor/google.golang.org/protobuf/internal/filedesc/build.go +0 -158
  263. data/vendor/google.golang.org/protobuf/internal/filedesc/desc.go +0 -631
  264. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go +0 -471
  265. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go +0 -704
  266. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go +0 -450
  267. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go +0 -356
  268. data/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go +0 -107
  269. data/vendor/google.golang.org/protobuf/internal/filetype/build.go +0 -297
  270. data/vendor/google.golang.org/protobuf/internal/flags/flags.go +0 -24
  271. data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go +0 -9
  272. data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go +0 -9
  273. data/vendor/google.golang.org/protobuf/internal/genid/any_gen.go +0 -34
  274. data/vendor/google.golang.org/protobuf/internal/genid/api_gen.go +0 -106
  275. data/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +0 -829
  276. data/vendor/google.golang.org/protobuf/internal/genid/doc.go +0 -11
  277. data/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go +0 -34
  278. data/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go +0 -19
  279. data/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go +0 -31
  280. data/vendor/google.golang.org/protobuf/internal/genid/goname.go +0 -25
  281. data/vendor/google.golang.org/protobuf/internal/genid/map_entry.go +0 -16
  282. data/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go +0 -31
  283. data/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go +0 -116
  284. data/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go +0 -34
  285. data/vendor/google.golang.org/protobuf/internal/genid/type_gen.go +0 -184
  286. data/vendor/google.golang.org/protobuf/internal/genid/wrappers.go +0 -13
  287. data/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go +0 -175
  288. data/vendor/google.golang.org/protobuf/internal/impl/api_export.go +0 -177
  289. data/vendor/google.golang.org/protobuf/internal/impl/checkinit.go +0 -141
  290. data/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go +0 -223
  291. data/vendor/google.golang.org/protobuf/internal/impl/codec_field.go +0 -830
  292. data/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go +0 -5637
  293. data/vendor/google.golang.org/protobuf/internal/impl/codec_map.go +0 -388
  294. data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go +0 -37
  295. data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go +0 -11
  296. data/vendor/google.golang.org/protobuf/internal/impl/codec_message.go +0 -217
  297. data/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go +0 -123
  298. data/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go +0 -209
  299. data/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go +0 -557
  300. data/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go +0 -17
  301. data/vendor/google.golang.org/protobuf/internal/impl/convert.go +0 -496
  302. data/vendor/google.golang.org/protobuf/internal/impl/convert_list.go +0 -141
  303. data/vendor/google.golang.org/protobuf/internal/impl/convert_map.go +0 -121
  304. data/vendor/google.golang.org/protobuf/internal/impl/decode.go +0 -276
  305. data/vendor/google.golang.org/protobuf/internal/impl/encode.go +0 -201
  306. data/vendor/google.golang.org/protobuf/internal/impl/enum.go +0 -21
  307. data/vendor/google.golang.org/protobuf/internal/impl/extension.go +0 -156
  308. data/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go +0 -219
  309. data/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go +0 -92
  310. data/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go +0 -176
  311. data/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go +0 -81
  312. data/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go +0 -558
  313. data/vendor/google.golang.org/protobuf/internal/impl/merge.go +0 -176
  314. data/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go +0 -209
  315. data/vendor/google.golang.org/protobuf/internal/impl/message.go +0 -276
  316. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go +0 -465
  317. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go +0 -543
  318. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go +0 -249
  319. data/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go +0 -178
  320. data/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go +0 -174
  321. data/vendor/google.golang.org/protobuf/internal/impl/validate.go +0 -576
  322. data/vendor/google.golang.org/protobuf/internal/impl/weak.go +0 -74
  323. data/vendor/google.golang.org/protobuf/internal/order/order.go +0 -89
  324. data/vendor/google.golang.org/protobuf/internal/order/range.go +0 -115
  325. data/vendor/google.golang.org/protobuf/internal/pragma/pragma.go +0 -29
  326. data/vendor/google.golang.org/protobuf/internal/set/ints.go +0 -58
  327. data/vendor/google.golang.org/protobuf/internal/strs/strings.go +0 -196
  328. data/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go +0 -27
  329. data/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go +0 -94
  330. data/vendor/google.golang.org/protobuf/internal/version/version.go +0 -79
  331. data/vendor/google.golang.org/protobuf/proto/checkinit.go +0 -71
  332. data/vendor/google.golang.org/protobuf/proto/decode.go +0 -278
  333. data/vendor/google.golang.org/protobuf/proto/decode_gen.go +0 -603
  334. data/vendor/google.golang.org/protobuf/proto/doc.go +0 -94
  335. data/vendor/google.golang.org/protobuf/proto/encode.go +0 -319
  336. data/vendor/google.golang.org/protobuf/proto/encode_gen.go +0 -97
  337. data/vendor/google.golang.org/protobuf/proto/equal.go +0 -167
  338. data/vendor/google.golang.org/protobuf/proto/extension.go +0 -92
  339. data/vendor/google.golang.org/protobuf/proto/merge.go +0 -139
  340. data/vendor/google.golang.org/protobuf/proto/messageset.go +0 -93
  341. data/vendor/google.golang.org/protobuf/proto/proto.go +0 -43
  342. data/vendor/google.golang.org/protobuf/proto/proto_methods.go +0 -19
  343. data/vendor/google.golang.org/protobuf/proto/proto_reflect.go +0 -19
  344. data/vendor/google.golang.org/protobuf/proto/reset.go +0 -43
  345. data/vendor/google.golang.org/protobuf/proto/size.go +0 -97
  346. data/vendor/google.golang.org/protobuf/proto/size_gen.go +0 -55
  347. data/vendor/google.golang.org/protobuf/proto/wrappers.go +0 -29
  348. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc.go +0 -276
  349. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.go +0 -248
  350. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_resolve.go +0 -286
  351. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_validate.go +0 -374
  352. data/vendor/google.golang.org/protobuf/reflect/protodesc/proto.go +0 -252
  353. data/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go +0 -77
  354. data/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go +0 -504
  355. data/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go +0 -128
  356. data/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +0 -461
  357. data/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go +0 -665
  358. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go +0 -285
  359. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go +0 -59
  360. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go +0 -411
  361. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go +0 -98
  362. data/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go +0 -869
  363. data/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go +0 -15
  364. data/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go +0 -167
  365. data/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go +0 -44
  366. data/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go +0 -56
  367. data/vendor/google.golang.org/protobuf/types/descriptorpb/descriptor.pb.go +0 -4039
  368. data/vendor/modules.txt +0 -79
@@ -1,450 +0,0 @@
1
- // Copyright 2019 The Go Authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style
3
- // license that can be found in the LICENSE file.
4
-
5
- package filedesc
6
-
7
- import (
8
- "fmt"
9
- "math"
10
- "sort"
11
- "sync"
12
-
13
- "google.golang.org/protobuf/internal/genid"
14
-
15
- "google.golang.org/protobuf/encoding/protowire"
16
- "google.golang.org/protobuf/internal/descfmt"
17
- "google.golang.org/protobuf/internal/errors"
18
- "google.golang.org/protobuf/internal/pragma"
19
- "google.golang.org/protobuf/reflect/protoreflect"
20
- pref "google.golang.org/protobuf/reflect/protoreflect"
21
- )
22
-
23
- type FileImports []pref.FileImport
24
-
25
- func (p *FileImports) Len() int { return len(*p) }
26
- func (p *FileImports) Get(i int) pref.FileImport { return (*p)[i] }
27
- func (p *FileImports) Format(s fmt.State, r rune) { descfmt.FormatList(s, r, p) }
28
- func (p *FileImports) ProtoInternal(pragma.DoNotImplement) {}
29
-
30
- type Names struct {
31
- List []pref.Name
32
- once sync.Once
33
- has map[pref.Name]int // protected by once
34
- }
35
-
36
- func (p *Names) Len() int { return len(p.List) }
37
- func (p *Names) Get(i int) pref.Name { return p.List[i] }
38
- func (p *Names) Has(s pref.Name) bool { return p.lazyInit().has[s] > 0 }
39
- func (p *Names) Format(s fmt.State, r rune) { descfmt.FormatList(s, r, p) }
40
- func (p *Names) ProtoInternal(pragma.DoNotImplement) {}
41
- func (p *Names) lazyInit() *Names {
42
- p.once.Do(func() {
43
- if len(p.List) > 0 {
44
- p.has = make(map[pref.Name]int, len(p.List))
45
- for _, s := range p.List {
46
- p.has[s] = p.has[s] + 1
47
- }
48
- }
49
- })
50
- return p
51
- }
52
-
53
- // CheckValid reports any errors with the set of names with an error message
54
- // that completes the sentence: "ranges is invalid because it has ..."
55
- func (p *Names) CheckValid() error {
56
- for s, n := range p.lazyInit().has {
57
- switch {
58
- case n > 1:
59
- return errors.New("duplicate name: %q", s)
60
- case false && !s.IsValid():
61
- // NOTE: The C++ implementation does not validate the identifier.
62
- // See https://github.com/protocolbuffers/protobuf/issues/6335.
63
- return errors.New("invalid name: %q", s)
64
- }
65
- }
66
- return nil
67
- }
68
-
69
- type EnumRanges struct {
70
- List [][2]pref.EnumNumber // start inclusive; end inclusive
71
- once sync.Once
72
- sorted [][2]pref.EnumNumber // protected by once
73
- }
74
-
75
- func (p *EnumRanges) Len() int { return len(p.List) }
76
- func (p *EnumRanges) Get(i int) [2]pref.EnumNumber { return p.List[i] }
77
- func (p *EnumRanges) Has(n pref.EnumNumber) bool {
78
- for ls := p.lazyInit().sorted; len(ls) > 0; {
79
- i := len(ls) / 2
80
- switch r := enumRange(ls[i]); {
81
- case n < r.Start():
82
- ls = ls[:i] // search lower
83
- case n > r.End():
84
- ls = ls[i+1:] // search upper
85
- default:
86
- return true
87
- }
88
- }
89
- return false
90
- }
91
- func (p *EnumRanges) Format(s fmt.State, r rune) { descfmt.FormatList(s, r, p) }
92
- func (p *EnumRanges) ProtoInternal(pragma.DoNotImplement) {}
93
- func (p *EnumRanges) lazyInit() *EnumRanges {
94
- p.once.Do(func() {
95
- p.sorted = append(p.sorted, p.List...)
96
- sort.Slice(p.sorted, func(i, j int) bool {
97
- return p.sorted[i][0] < p.sorted[j][0]
98
- })
99
- })
100
- return p
101
- }
102
-
103
- // CheckValid reports any errors with the set of names with an error message
104
- // that completes the sentence: "ranges is invalid because it has ..."
105
- func (p *EnumRanges) CheckValid() error {
106
- var rp enumRange
107
- for i, r := range p.lazyInit().sorted {
108
- r := enumRange(r)
109
- switch {
110
- case !(r.Start() <= r.End()):
111
- return errors.New("invalid range: %v", r)
112
- case !(rp.End() < r.Start()) && i > 0:
113
- return errors.New("overlapping ranges: %v with %v", rp, r)
114
- }
115
- rp = r
116
- }
117
- return nil
118
- }
119
-
120
- type enumRange [2]protoreflect.EnumNumber
121
-
122
- func (r enumRange) Start() protoreflect.EnumNumber { return r[0] } // inclusive
123
- func (r enumRange) End() protoreflect.EnumNumber { return r[1] } // inclusive
124
- func (r enumRange) String() string {
125
- if r.Start() == r.End() {
126
- return fmt.Sprintf("%d", r.Start())
127
- }
128
- return fmt.Sprintf("%d to %d", r.Start(), r.End())
129
- }
130
-
131
- type FieldRanges struct {
132
- List [][2]pref.FieldNumber // start inclusive; end exclusive
133
- once sync.Once
134
- sorted [][2]pref.FieldNumber // protected by once
135
- }
136
-
137
- func (p *FieldRanges) Len() int { return len(p.List) }
138
- func (p *FieldRanges) Get(i int) [2]pref.FieldNumber { return p.List[i] }
139
- func (p *FieldRanges) Has(n pref.FieldNumber) bool {
140
- for ls := p.lazyInit().sorted; len(ls) > 0; {
141
- i := len(ls) / 2
142
- switch r := fieldRange(ls[i]); {
143
- case n < r.Start():
144
- ls = ls[:i] // search lower
145
- case n > r.End():
146
- ls = ls[i+1:] // search upper
147
- default:
148
- return true
149
- }
150
- }
151
- return false
152
- }
153
- func (p *FieldRanges) Format(s fmt.State, r rune) { descfmt.FormatList(s, r, p) }
154
- func (p *FieldRanges) ProtoInternal(pragma.DoNotImplement) {}
155
- func (p *FieldRanges) lazyInit() *FieldRanges {
156
- p.once.Do(func() {
157
- p.sorted = append(p.sorted, p.List...)
158
- sort.Slice(p.sorted, func(i, j int) bool {
159
- return p.sorted[i][0] < p.sorted[j][0]
160
- })
161
- })
162
- return p
163
- }
164
-
165
- // CheckValid reports any errors with the set of ranges with an error message
166
- // that completes the sentence: "ranges is invalid because it has ..."
167
- func (p *FieldRanges) CheckValid(isMessageSet bool) error {
168
- var rp fieldRange
169
- for i, r := range p.lazyInit().sorted {
170
- r := fieldRange(r)
171
- switch {
172
- case !isValidFieldNumber(r.Start(), isMessageSet):
173
- return errors.New("invalid field number: %d", r.Start())
174
- case !isValidFieldNumber(r.End(), isMessageSet):
175
- return errors.New("invalid field number: %d", r.End())
176
- case !(r.Start() <= r.End()):
177
- return errors.New("invalid range: %v", r)
178
- case !(rp.End() < r.Start()) && i > 0:
179
- return errors.New("overlapping ranges: %v with %v", rp, r)
180
- }
181
- rp = r
182
- }
183
- return nil
184
- }
185
-
186
- // isValidFieldNumber reports whether the field number is valid.
187
- // Unlike the FieldNumber.IsValid method, it allows ranges that cover the
188
- // reserved number range.
189
- func isValidFieldNumber(n protoreflect.FieldNumber, isMessageSet bool) bool {
190
- return protowire.MinValidNumber <= n && (n <= protowire.MaxValidNumber || isMessageSet)
191
- }
192
-
193
- // CheckOverlap reports an error if p and q overlap.
194
- func (p *FieldRanges) CheckOverlap(q *FieldRanges) error {
195
- rps := p.lazyInit().sorted
196
- rqs := q.lazyInit().sorted
197
- for pi, qi := 0, 0; pi < len(rps) && qi < len(rqs); {
198
- rp := fieldRange(rps[pi])
199
- rq := fieldRange(rqs[qi])
200
- if !(rp.End() < rq.Start() || rq.End() < rp.Start()) {
201
- return errors.New("overlapping ranges: %v with %v", rp, rq)
202
- }
203
- if rp.Start() < rq.Start() {
204
- pi++
205
- } else {
206
- qi++
207
- }
208
- }
209
- return nil
210
- }
211
-
212
- type fieldRange [2]protoreflect.FieldNumber
213
-
214
- func (r fieldRange) Start() protoreflect.FieldNumber { return r[0] } // inclusive
215
- func (r fieldRange) End() protoreflect.FieldNumber { return r[1] - 1 } // inclusive
216
- func (r fieldRange) String() string {
217
- if r.Start() == r.End() {
218
- return fmt.Sprintf("%d", r.Start())
219
- }
220
- return fmt.Sprintf("%d to %d", r.Start(), r.End())
221
- }
222
-
223
- type FieldNumbers struct {
224
- List []pref.FieldNumber
225
- once sync.Once
226
- has map[pref.FieldNumber]struct{} // protected by once
227
- }
228
-
229
- func (p *FieldNumbers) Len() int { return len(p.List) }
230
- func (p *FieldNumbers) Get(i int) pref.FieldNumber { return p.List[i] }
231
- func (p *FieldNumbers) Has(n pref.FieldNumber) bool {
232
- p.once.Do(func() {
233
- if len(p.List) > 0 {
234
- p.has = make(map[pref.FieldNumber]struct{}, len(p.List))
235
- for _, n := range p.List {
236
- p.has[n] = struct{}{}
237
- }
238
- }
239
- })
240
- _, ok := p.has[n]
241
- return ok
242
- }
243
- func (p *FieldNumbers) Format(s fmt.State, r rune) { descfmt.FormatList(s, r, p) }
244
- func (p *FieldNumbers) ProtoInternal(pragma.DoNotImplement) {}
245
-
246
- type OneofFields struct {
247
- List []pref.FieldDescriptor
248
- once sync.Once
249
- byName map[pref.Name]pref.FieldDescriptor // protected by once
250
- byJSON map[string]pref.FieldDescriptor // protected by once
251
- byText map[string]pref.FieldDescriptor // protected by once
252
- byNum map[pref.FieldNumber]pref.FieldDescriptor // protected by once
253
- }
254
-
255
- func (p *OneofFields) Len() int { return len(p.List) }
256
- func (p *OneofFields) Get(i int) pref.FieldDescriptor { return p.List[i] }
257
- func (p *OneofFields) ByName(s pref.Name) pref.FieldDescriptor { return p.lazyInit().byName[s] }
258
- func (p *OneofFields) ByJSONName(s string) pref.FieldDescriptor { return p.lazyInit().byJSON[s] }
259
- func (p *OneofFields) ByTextName(s string) pref.FieldDescriptor { return p.lazyInit().byText[s] }
260
- func (p *OneofFields) ByNumber(n pref.FieldNumber) pref.FieldDescriptor { return p.lazyInit().byNum[n] }
261
- func (p *OneofFields) Format(s fmt.State, r rune) { descfmt.FormatList(s, r, p) }
262
- func (p *OneofFields) ProtoInternal(pragma.DoNotImplement) {}
263
-
264
- func (p *OneofFields) lazyInit() *OneofFields {
265
- p.once.Do(func() {
266
- if len(p.List) > 0 {
267
- p.byName = make(map[pref.Name]pref.FieldDescriptor, len(p.List))
268
- p.byJSON = make(map[string]pref.FieldDescriptor, len(p.List))
269
- p.byText = make(map[string]pref.FieldDescriptor, len(p.List))
270
- p.byNum = make(map[pref.FieldNumber]pref.FieldDescriptor, len(p.List))
271
- for _, f := range p.List {
272
- // Field names and numbers are guaranteed to be unique.
273
- p.byName[f.Name()] = f
274
- p.byJSON[f.JSONName()] = f
275
- p.byText[f.TextName()] = f
276
- p.byNum[f.Number()] = f
277
- }
278
- }
279
- })
280
- return p
281
- }
282
-
283
- type SourceLocations struct {
284
- // List is a list of SourceLocations.
285
- // The SourceLocation.Next field does not need to be populated
286
- // as it will be lazily populated upon first need.
287
- List []pref.SourceLocation
288
-
289
- // File is the parent file descriptor that these locations are relative to.
290
- // If non-nil, ByDescriptor verifies that the provided descriptor
291
- // is a child of this file descriptor.
292
- File pref.FileDescriptor
293
-
294
- once sync.Once
295
- byPath map[pathKey]int
296
- }
297
-
298
- func (p *SourceLocations) Len() int { return len(p.List) }
299
- func (p *SourceLocations) Get(i int) pref.SourceLocation { return p.lazyInit().List[i] }
300
- func (p *SourceLocations) byKey(k pathKey) pref.SourceLocation {
301
- if i, ok := p.lazyInit().byPath[k]; ok {
302
- return p.List[i]
303
- }
304
- return pref.SourceLocation{}
305
- }
306
- func (p *SourceLocations) ByPath(path pref.SourcePath) pref.SourceLocation {
307
- return p.byKey(newPathKey(path))
308
- }
309
- func (p *SourceLocations) ByDescriptor(desc pref.Descriptor) pref.SourceLocation {
310
- if p.File != nil && desc != nil && p.File != desc.ParentFile() {
311
- return pref.SourceLocation{} // mismatching parent files
312
- }
313
- var pathArr [16]int32
314
- path := pathArr[:0]
315
- for {
316
- switch desc.(type) {
317
- case pref.FileDescriptor:
318
- // Reverse the path since it was constructed in reverse.
319
- for i, j := 0, len(path)-1; i < j; i, j = i+1, j-1 {
320
- path[i], path[j] = path[j], path[i]
321
- }
322
- return p.byKey(newPathKey(path))
323
- case pref.MessageDescriptor:
324
- path = append(path, int32(desc.Index()))
325
- desc = desc.Parent()
326
- switch desc.(type) {
327
- case pref.FileDescriptor:
328
- path = append(path, int32(genid.FileDescriptorProto_MessageType_field_number))
329
- case pref.MessageDescriptor:
330
- path = append(path, int32(genid.DescriptorProto_NestedType_field_number))
331
- default:
332
- return pref.SourceLocation{}
333
- }
334
- case pref.FieldDescriptor:
335
- isExtension := desc.(pref.FieldDescriptor).IsExtension()
336
- path = append(path, int32(desc.Index()))
337
- desc = desc.Parent()
338
- if isExtension {
339
- switch desc.(type) {
340
- case pref.FileDescriptor:
341
- path = append(path, int32(genid.FileDescriptorProto_Extension_field_number))
342
- case pref.MessageDescriptor:
343
- path = append(path, int32(genid.DescriptorProto_Extension_field_number))
344
- default:
345
- return pref.SourceLocation{}
346
- }
347
- } else {
348
- switch desc.(type) {
349
- case pref.MessageDescriptor:
350
- path = append(path, int32(genid.DescriptorProto_Field_field_number))
351
- default:
352
- return pref.SourceLocation{}
353
- }
354
- }
355
- case pref.OneofDescriptor:
356
- path = append(path, int32(desc.Index()))
357
- desc = desc.Parent()
358
- switch desc.(type) {
359
- case pref.MessageDescriptor:
360
- path = append(path, int32(genid.DescriptorProto_OneofDecl_field_number))
361
- default:
362
- return pref.SourceLocation{}
363
- }
364
- case pref.EnumDescriptor:
365
- path = append(path, int32(desc.Index()))
366
- desc = desc.Parent()
367
- switch desc.(type) {
368
- case pref.FileDescriptor:
369
- path = append(path, int32(genid.FileDescriptorProto_EnumType_field_number))
370
- case pref.MessageDescriptor:
371
- path = append(path, int32(genid.DescriptorProto_EnumType_field_number))
372
- default:
373
- return pref.SourceLocation{}
374
- }
375
- case pref.EnumValueDescriptor:
376
- path = append(path, int32(desc.Index()))
377
- desc = desc.Parent()
378
- switch desc.(type) {
379
- case pref.EnumDescriptor:
380
- path = append(path, int32(genid.EnumDescriptorProto_Value_field_number))
381
- default:
382
- return pref.SourceLocation{}
383
- }
384
- case pref.ServiceDescriptor:
385
- path = append(path, int32(desc.Index()))
386
- desc = desc.Parent()
387
- switch desc.(type) {
388
- case pref.FileDescriptor:
389
- path = append(path, int32(genid.FileDescriptorProto_Service_field_number))
390
- default:
391
- return pref.SourceLocation{}
392
- }
393
- case pref.MethodDescriptor:
394
- path = append(path, int32(desc.Index()))
395
- desc = desc.Parent()
396
- switch desc.(type) {
397
- case pref.ServiceDescriptor:
398
- path = append(path, int32(genid.ServiceDescriptorProto_Method_field_number))
399
- default:
400
- return pref.SourceLocation{}
401
- }
402
- default:
403
- return pref.SourceLocation{}
404
- }
405
- }
406
- }
407
- func (p *SourceLocations) lazyInit() *SourceLocations {
408
- p.once.Do(func() {
409
- if len(p.List) > 0 {
410
- // Collect all the indexes for a given path.
411
- pathIdxs := make(map[pathKey][]int, len(p.List))
412
- for i, l := range p.List {
413
- k := newPathKey(l.Path)
414
- pathIdxs[k] = append(pathIdxs[k], i)
415
- }
416
-
417
- // Update the next index for all locations.
418
- p.byPath = make(map[pathKey]int, len(p.List))
419
- for k, idxs := range pathIdxs {
420
- for i := 0; i < len(idxs)-1; i++ {
421
- p.List[idxs[i]].Next = idxs[i+1]
422
- }
423
- p.List[idxs[len(idxs)-1]].Next = 0
424
- p.byPath[k] = idxs[0] // record the first location for this path
425
- }
426
- }
427
- })
428
- return p
429
- }
430
- func (p *SourceLocations) ProtoInternal(pragma.DoNotImplement) {}
431
-
432
- // pathKey is a comparable representation of protoreflect.SourcePath.
433
- type pathKey struct {
434
- arr [16]uint8 // first n-1 path segments; last element is the length
435
- str string // used if the path does not fit in arr
436
- }
437
-
438
- func newPathKey(p pref.SourcePath) (k pathKey) {
439
- if len(p) < len(k.arr) {
440
- for i, ps := range p {
441
- if ps < 0 || math.MaxUint8 <= ps {
442
- return pathKey{str: p.String()}
443
- }
444
- k.arr[i] = uint8(ps)
445
- }
446
- k.arr[len(k.arr)-1] = uint8(len(p))
447
- return k
448
- }
449
- return pathKey{str: p.String()}
450
- }