rbs_protobuf 0.1.0 → 1.0.0
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.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +6 -6
- data/.gitignore +1 -1
- data/.gitmodules +3 -0
- data/CHANGELOG.md +26 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +70 -0
- data/README.md +39 -16
- data/Rakefile +15 -2
- data/Steepfile +13 -0
- data/bin/setup +2 -0
- data/bin/steep +17 -0
- data/example/Steepfile +11 -5
- data/example/c.proto +12 -0
- data/exe/protoc-gen-rbs +15 -1
- data/lib/rbs_protobuf/name.rb +68 -0
- data/lib/rbs_protobuf/rbs_factory.rb +18 -14
- data/lib/rbs_protobuf/translator/base.rb +30 -5
- data/lib/rbs_protobuf/translator/protobuf_gem.rb +498 -217
- data/lib/rbs_protobuf/version.rb +1 -1
- data/lib/rbs_protobuf.rb +2 -1
- data/rbs_collection.lock.yaml +108 -0
- data/rbs_collection.yaml +19 -0
- data/rbs_protobuf.gemspec +2 -2
- data/sig/rbs_protobuf/name.rbs +45 -0
- data/sig/rbs_protobuf/rbs_factory.rbs +41 -0
- data/sig/rbs_protobuf/translator/base.rbs +35 -0
- data/sig/rbs_protobuf/translator/protobuf_gem.rbs +122 -0
- data/sig/rbs_protobuf/version.rbs +3 -0
- data/sig/rbs_protobuf.rbs +5 -0
- metadata +20 -6
data/lib/rbs_protobuf/version.rb
CHANGED
data/lib/rbs_protobuf.rb
CHANGED
@@ -3,7 +3,7 @@ require "rbs_protobuf/version"
|
|
3
3
|
require "logger"
|
4
4
|
|
5
5
|
require "protobuf/descriptors"
|
6
|
-
require "active_support
|
6
|
+
require "active_support"
|
7
7
|
require "rbs"
|
8
8
|
|
9
9
|
module RBSProtobuf
|
@@ -14,6 +14,7 @@ module RBSProtobuf
|
|
14
14
|
@logger = Logger.new(STDERR)
|
15
15
|
end
|
16
16
|
|
17
|
+
require "rbs_protobuf/name"
|
17
18
|
require "rbs_protobuf/rbs_factory"
|
18
19
|
require "rbs_protobuf/translator/base"
|
19
20
|
require "rbs_protobuf/translator/protobuf_gem"
|
@@ -0,0 +1,108 @@
|
|
1
|
+
---
|
2
|
+
sources:
|
3
|
+
- name: ruby/gem_rbs_collection
|
4
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
5
|
+
revision: main
|
6
|
+
repo_dir: gems
|
7
|
+
path: ".gem_rbs_collection"
|
8
|
+
gems:
|
9
|
+
- name: rbs
|
10
|
+
version: 2.3.2
|
11
|
+
source:
|
12
|
+
type: rubygems
|
13
|
+
- name: activesupport
|
14
|
+
version: '6.0'
|
15
|
+
source:
|
16
|
+
type: git
|
17
|
+
name: ruby/gem_rbs_collection
|
18
|
+
revision: c7b9329222debd0b8a4a85c0ccdae6588fedd57a
|
19
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
20
|
+
repo_dir: gems
|
21
|
+
- name: ast
|
22
|
+
version: '2.4'
|
23
|
+
source:
|
24
|
+
type: git
|
25
|
+
name: ruby/gem_rbs_collection
|
26
|
+
revision: c7b9329222debd0b8a4a85c0ccdae6588fedd57a
|
27
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
28
|
+
repo_dir: gems
|
29
|
+
- name: i18n
|
30
|
+
version: '1.10'
|
31
|
+
source:
|
32
|
+
type: git
|
33
|
+
name: ruby/gem_rbs_collection
|
34
|
+
revision: c7b9329222debd0b8a4a85c0ccdae6588fedd57a
|
35
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
36
|
+
repo_dir: gems
|
37
|
+
- name: listen
|
38
|
+
version: '3.2'
|
39
|
+
source:
|
40
|
+
type: git
|
41
|
+
name: ruby/gem_rbs_collection
|
42
|
+
revision: c7b9329222debd0b8a4a85c0ccdae6588fedd57a
|
43
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
44
|
+
repo_dir: gems
|
45
|
+
- name: parallel
|
46
|
+
version: '1.20'
|
47
|
+
source:
|
48
|
+
type: git
|
49
|
+
name: ruby/gem_rbs_collection
|
50
|
+
revision: c7b9329222debd0b8a4a85c0ccdae6588fedd57a
|
51
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
52
|
+
repo_dir: gems
|
53
|
+
- name: rainbow
|
54
|
+
version: '3.0'
|
55
|
+
source:
|
56
|
+
type: git
|
57
|
+
name: ruby/gem_rbs_collection
|
58
|
+
revision: c7b9329222debd0b8a4a85c0ccdae6588fedd57a
|
59
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
60
|
+
repo_dir: gems
|
61
|
+
- name: logger
|
62
|
+
version: '0'
|
63
|
+
source:
|
64
|
+
type: stdlib
|
65
|
+
- name: set
|
66
|
+
version: '0'
|
67
|
+
source:
|
68
|
+
type: stdlib
|
69
|
+
- name: pathname
|
70
|
+
version: '0'
|
71
|
+
source:
|
72
|
+
type: stdlib
|
73
|
+
- name: json
|
74
|
+
version: '0'
|
75
|
+
source:
|
76
|
+
type: stdlib
|
77
|
+
- name: optparse
|
78
|
+
version: '0'
|
79
|
+
source:
|
80
|
+
type: stdlib
|
81
|
+
- name: rubygems
|
82
|
+
version: '0'
|
83
|
+
source:
|
84
|
+
type: stdlib
|
85
|
+
- name: tsort
|
86
|
+
version: '0'
|
87
|
+
source:
|
88
|
+
type: stdlib
|
89
|
+
- name: monitor
|
90
|
+
version: '0'
|
91
|
+
source:
|
92
|
+
type: stdlib
|
93
|
+
- name: date
|
94
|
+
version: '0'
|
95
|
+
source:
|
96
|
+
type: stdlib
|
97
|
+
- name: singleton
|
98
|
+
version: '0'
|
99
|
+
source:
|
100
|
+
type: stdlib
|
101
|
+
- name: mutex_m
|
102
|
+
version: '0'
|
103
|
+
source:
|
104
|
+
type: stdlib
|
105
|
+
- name: time
|
106
|
+
version: '0'
|
107
|
+
source:
|
108
|
+
type: stdlib
|
data/rbs_collection.yaml
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# Download sources
|
2
|
+
sources:
|
3
|
+
- name: ruby/gem_rbs_collection
|
4
|
+
remote: https://github.com/ruby/gem_rbs_collection.git
|
5
|
+
revision: main
|
6
|
+
repo_dir: gems
|
7
|
+
|
8
|
+
# A directory to install the downloaded RBSs
|
9
|
+
path: .gem_rbs_collection
|
10
|
+
|
11
|
+
gems:
|
12
|
+
# Skip loading rbs gem's RBS.
|
13
|
+
# It's unnecessary if you don't use rbs as a library.
|
14
|
+
- name: rbs
|
15
|
+
- name: activesupport
|
16
|
+
- name: protobuf
|
17
|
+
ignore: true
|
18
|
+
- name: rbs_protobuf
|
19
|
+
ignore: true
|
data/rbs_protobuf.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.description = "Generate RBS files from .proto files"
|
11
11
|
spec.homepage = "https://github.com/square/rbs_protobuf"
|
12
12
|
spec.license = "MIT"
|
13
|
-
spec.required_ruby_version = Gem::Requirement.new(">= 2.
|
13
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 2.7.0")
|
14
14
|
|
15
15
|
spec.metadata["homepage_uri"] = spec.homepage
|
16
16
|
spec.metadata["source_code_uri"] = "https://github.com/square/rbs_protobuf"
|
@@ -25,6 +25,6 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
26
26
|
spec.require_paths = ["lib"]
|
27
27
|
|
28
|
-
spec.add_runtime_dependency "rbs", ">=
|
28
|
+
spec.add_runtime_dependency "rbs", ">=2.2.0"
|
29
29
|
spec.add_runtime_dependency "activesupport", ">=4.0"
|
30
30
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module RBSProtobuf
|
2
|
+
module Name
|
3
|
+
class Class
|
4
|
+
attr_reader name: RBS::TypeName
|
5
|
+
|
6
|
+
def initialize: (RBS::TypeName) -> void
|
7
|
+
|
8
|
+
def instance_type: (*RBS::Types::t args) -> RBS::Types::ClassInstance
|
9
|
+
|
10
|
+
def singleton_type: () -> RBS::Types::ClassSingleton
|
11
|
+
|
12
|
+
def instance_type?: (RBS::Types::t) -> bool
|
13
|
+
|
14
|
+
def singleton_type?: (RBS::Types::t) -> bool
|
15
|
+
|
16
|
+
alias [] instance_type
|
17
|
+
|
18
|
+
def super_class: (*RBS::Types::t args) -> RBS::AST::Declarations::Class::Super
|
19
|
+
end
|
20
|
+
|
21
|
+
class Alias
|
22
|
+
attr_reader name: RBS::TypeName
|
23
|
+
|
24
|
+
def initialize: (RBS::TypeName) -> void
|
25
|
+
|
26
|
+
def []: (*RBS::Types::t args) -> RBS::Types::Alias
|
27
|
+
|
28
|
+
def type?: (RBS::Types::t) -> bool
|
29
|
+
|
30
|
+
alias === type?
|
31
|
+
end
|
32
|
+
|
33
|
+
class Interface
|
34
|
+
attr_reader name: RBS::TypeName
|
35
|
+
|
36
|
+
def initialize: (RBS::TypeName) -> void
|
37
|
+
|
38
|
+
def []: (*RBS::Types::t args) -> RBS::Types::Interface
|
39
|
+
|
40
|
+
def type?: (RBS::Types::t) -> bool
|
41
|
+
|
42
|
+
alias === type?
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module RBSProtobuf
|
2
|
+
class RBSFactory
|
3
|
+
include RBS
|
4
|
+
|
5
|
+
def type_name: (String) -> RBS::TypeName
|
6
|
+
|
7
|
+
def namespace: (String) -> RBS::Namespace
|
8
|
+
|
9
|
+
def instance_type: (String | RBS::TypeName name, *RBS::Types::t args) -> RBS::Types::ClassInstance
|
10
|
+
|
11
|
+
def singleton_type: (String | RBS::TypeName name) -> RBS::Types::ClassSingleton
|
12
|
+
|
13
|
+
def union_type: (RBS::Types::t `type`, *RBS::Types::t types) -> RBS::Types::t
|
14
|
+
|
15
|
+
def nil_type: (?location: RBS::Location[untyped, untyped]?) -> RBS::Types::Bases::Nil
|
16
|
+
|
17
|
+
def bool_type: (?location: RBS::Location[untyped, untyped]?) -> RBS::Types::Bases::Bool
|
18
|
+
|
19
|
+
def alias_type: (String | RBS::TypeName name, ?location: RBS::Location[untyped, untyped]?) -> RBS::Types::Alias
|
20
|
+
|
21
|
+
def function: (?RBS::Types::t return_type) -> RBS::Types::Function
|
22
|
+
|
23
|
+
def param: (RBS::Types::t type, ?name: Symbol?) -> RBS::Types::Function::Param
|
24
|
+
|
25
|
+
def block: (RBS::Types::Function function, ?required: bool) -> RBS::Types::Block
|
26
|
+
|
27
|
+
def untyped: (?location: RBS::Location[untyped, untyped]?) -> RBS::Types::Bases::Any
|
28
|
+
|
29
|
+
def method_type: (?params: Array[Symbol], type: RBS::Types::Function, ?block: RBS::Types::Block?, ?location: RBS::Location[untyped, untyped]?) -> RBS::MethodType
|
30
|
+
|
31
|
+
def literal_type: (RBS::Types::Literal::literal) -> RBS::Types::Literal
|
32
|
+
|
33
|
+
def optional_type: (RBS::Types::t, ?location: RBS::Location[untyped, untyped]?) -> RBS::Types::Optional
|
34
|
+
|
35
|
+
def type_var: (Symbol name, ?location: RBS::Location[untyped, untyped]?) -> RBS::Types::Variable
|
36
|
+
|
37
|
+
def module_type_params: (*Symbol params) -> Array[RBS::AST::TypeParam]
|
38
|
+
|
39
|
+
def unwrap_optional: (RBS::Types::t) -> RBS::Types::t
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module RBSProtobuf
|
2
|
+
module Translator
|
3
|
+
class Base
|
4
|
+
FieldDescriptorProto: untyped
|
5
|
+
|
6
|
+
attr_reader input: untyped
|
7
|
+
|
8
|
+
def initialize: (untyped input) -> void
|
9
|
+
|
10
|
+
@factory: RBSFactory
|
11
|
+
|
12
|
+
def factory: () -> RBSFactory
|
13
|
+
|
14
|
+
@response: untyped
|
15
|
+
|
16
|
+
def response: () -> untyped
|
17
|
+
|
18
|
+
def generate_rbs!: () -> void
|
19
|
+
|
20
|
+
def rbs_name: (String proto_name) -> String
|
21
|
+
|
22
|
+
def rbs_suffix: () -> ::String
|
23
|
+
|
24
|
+
def rbs_content: (String file) -> String
|
25
|
+
|
26
|
+
def comment_for_path: (untyped source_code_info, Array[Integer] path, options: untyped) -> RBS::AST::Comment?
|
27
|
+
|
28
|
+
def each_options_field: (untyped) { (Symbol, untyped) -> void } -> void
|
29
|
+
|
30
|
+
def base_type: (untyped `type`) -> RBS::Types::t
|
31
|
+
|
32
|
+
def message_type: (String) -> RBS::Types::ClassInstance
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,122 @@
|
|
1
|
+
module RBSProtobuf
|
2
|
+
module Translator
|
3
|
+
class ProtobufGem < Base
|
4
|
+
# Protobuf::Field::FieldArray[R, W]
|
5
|
+
FIELD_ARRAY: Name::Class
|
6
|
+
|
7
|
+
# Protobuf::Field::FieldHash[K, RV, WV]
|
8
|
+
FIELD_HASH: Name::Class
|
9
|
+
|
10
|
+
# Protobuf::Enum
|
11
|
+
ENUM: Name::Class
|
12
|
+
|
13
|
+
# Protobuf::Message
|
14
|
+
MESSAGE: Name::Class
|
15
|
+
|
16
|
+
# _ToProto
|
17
|
+
TO_PROTO: Name::Interface
|
18
|
+
|
19
|
+
# Protobuf::field_array[T]
|
20
|
+
FIELD_ARRAY_a: Name::Alias
|
21
|
+
|
22
|
+
# Protobuf::field_hash[K, V]
|
23
|
+
FIELD_HASH_a: Name::Alias
|
24
|
+
|
25
|
+
attr_reader stderr: IO
|
26
|
+
|
27
|
+
attr_reader accept_nil_writer: bool
|
28
|
+
|
29
|
+
def initialize: (
|
30
|
+
untyped input,
|
31
|
+
upcase_enum: bool,
|
32
|
+
nested_namespace: bool,
|
33
|
+
extension: bool | :print | nil,
|
34
|
+
accept_nil_writer: bool,
|
35
|
+
?stderr: IO,
|
36
|
+
) -> void
|
37
|
+
|
38
|
+
@upcase_enum: bool
|
39
|
+
|
40
|
+
@nested_namespace: bool
|
41
|
+
|
42
|
+
@extension: bool | :print | nil
|
43
|
+
|
44
|
+
# Returns true if extension should be ignored.
|
45
|
+
#
|
46
|
+
def ignore_extension?: () -> bool
|
47
|
+
|
48
|
+
# Returns true if documentation message about extension is requested.
|
49
|
+
def print_extension_message?: () -> bool
|
50
|
+
|
51
|
+
# Returns true if extension should be printed to stderr.
|
52
|
+
#
|
53
|
+
def print_extension?: () -> bool
|
54
|
+
|
55
|
+
# Returns true if enum names should be `upcase`.
|
56
|
+
#
|
57
|
+
def upcase_enum?: () -> bool
|
58
|
+
|
59
|
+
# Returns true if printing nested namespace is preferred.
|
60
|
+
#
|
61
|
+
def nested_namespace?: () -> bool
|
62
|
+
|
63
|
+
# The entry point.
|
64
|
+
# Generate RBS declarations from the `file` and returns the string representation of the declarations.
|
65
|
+
#
|
66
|
+
def rbs_content: (untyped file) -> String
|
67
|
+
|
68
|
+
# Returns the class declaration for given message.
|
69
|
+
#
|
70
|
+
def message_to_decl: (untyped message, prefix: RBS::Namespace, message_path: untyped, source_code_info: untyped, path: Array[Integer]) -> RBS::AST::Declarations::Class
|
71
|
+
|
72
|
+
# Returns the class declaration for given enum.
|
73
|
+
#
|
74
|
+
def enum_type_to_decl: (untyped enum_type, prefix: RBS::Namespace, source_code_info: untyped, path: Array[Integer]) -> RBS::AST::Declarations::Class
|
75
|
+
|
76
|
+
# Returns the class declaration for given extension.
|
77
|
+
#
|
78
|
+
def extension_to_decl: (untyped extension, prefix: RBS::Namespace, source_code_info: untyped, path: Array[Integer]) -> RBS::AST::Declarations::Class
|
79
|
+
|
80
|
+
# Returns service class stub.
|
81
|
+
#
|
82
|
+
def service_to_decl: (untyped service, prefix: RBS::Namespace, source_code_info: untyped, path: Array[Integer]) -> RBS::AST::Declarations::Class
|
83
|
+
|
84
|
+
# Returns a triple of types of a field.
|
85
|
+
#
|
86
|
+
# - The first one is the type of the attribute. (read and write)
|
87
|
+
# - The second one is the array of type of additional possibilities for write.
|
88
|
+
# - The last one is the type of `initialize` parameter.
|
89
|
+
#
|
90
|
+
def field_type: (untyped field, Hash[String, [untyped, untyped]] maps) -> [RBS::Types::t, Array[RBS::Types::t], RBS::Types::t]
|
91
|
+
|
92
|
+
def message_to_proto_type: (RBS::Types::ClassInstance) -> RBS::Types::Interface
|
93
|
+
|
94
|
+
def message_array_type: (RBS::Types::ClassInstance) -> RBS::Types::Alias
|
95
|
+
|
96
|
+
def message_field_array_type: (RBS::Types::ClassInstance) -> RBS::Types::Alias
|
97
|
+
|
98
|
+
def message_hash_type: (RBS::Types::ClassInstance, RBS::Types::t key) -> RBS::Types::Alias
|
99
|
+
|
100
|
+
def message_field_hash_type: (RBS::Types::ClassInstance, RBS::Types::t key) -> RBS::Types::Alias
|
101
|
+
|
102
|
+
def message_init_type: (RBS::Types::ClassInstance) -> RBS::Types::Alias
|
103
|
+
|
104
|
+
# Returns enum names with respect to `#upcase_enum?`.
|
105
|
+
#
|
106
|
+
def enum_name: (String name) -> Symbol
|
107
|
+
|
108
|
+
# Add field to `members`. It adds
|
109
|
+
#
|
110
|
+
# - `attr_accessor` of the field `name` with `read_type`
|
111
|
+
# - Overloads for attribute writer with `write_types`
|
112
|
+
#
|
113
|
+
def add_field: (Array[RBS::AST::Declarations::Class::member] members, name: Symbol, read_type: RBS::Types::t, write_types: Array[RBS::Types::t], comment: RBS::AST::Comment?) -> void
|
114
|
+
|
115
|
+
# Returns true if `write_type` is an _interface type_ or an optional type of _interface type_.
|
116
|
+
#
|
117
|
+
def interface_type?: (RBS::Types::t write_type) -> [RBS::AST::TypeParam, RBS::Types::t]?
|
118
|
+
|
119
|
+
def service_base_class: () -> RBS::AST::Declarations::Class::Super
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbs_protobuf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Soutaro Matsumoto
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-04-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rbs
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 2.2.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 2.2.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: activesupport
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,26 +52,40 @@ files:
|
|
52
52
|
- ".protoc-version"
|
53
53
|
- ".rakeTasks"
|
54
54
|
- ".travis.yml"
|
55
|
+
- CHANGELOG.md
|
55
56
|
- Gemfile
|
57
|
+
- Gemfile.lock
|
56
58
|
- LICENSE.txt
|
57
59
|
- README.md
|
58
60
|
- Rakefile
|
61
|
+
- Steepfile
|
59
62
|
- bin/console
|
60
63
|
- bin/protoc-gen-dumper
|
61
64
|
- bin/protoc-gen-ruby
|
62
65
|
- bin/rpc_server
|
63
66
|
- bin/setup
|
67
|
+
- bin/steep
|
64
68
|
- example/Steepfile
|
65
69
|
- example/a.proto
|
66
70
|
- example/b.proto
|
71
|
+
- example/c.proto
|
67
72
|
- example/protobuf_gem_example.rb
|
68
73
|
- exe/protoc-gen-rbs
|
69
74
|
- lib/rbs_protobuf.rb
|
75
|
+
- lib/rbs_protobuf/name.rb
|
70
76
|
- lib/rbs_protobuf/rbs_factory.rb
|
71
77
|
- lib/rbs_protobuf/translator/base.rb
|
72
78
|
- lib/rbs_protobuf/translator/protobuf_gem.rb
|
73
79
|
- lib/rbs_protobuf/version.rb
|
80
|
+
- rbs_collection.lock.yaml
|
81
|
+
- rbs_collection.yaml
|
74
82
|
- rbs_protobuf.gemspec
|
83
|
+
- sig/rbs_protobuf.rbs
|
84
|
+
- sig/rbs_protobuf/name.rbs
|
85
|
+
- sig/rbs_protobuf/rbs_factory.rbs
|
86
|
+
- sig/rbs_protobuf/translator/base.rbs
|
87
|
+
- sig/rbs_protobuf/translator/protobuf_gem.rbs
|
88
|
+
- sig/rbs_protobuf/version.rbs
|
75
89
|
homepage: https://github.com/square/rbs_protobuf
|
76
90
|
licenses:
|
77
91
|
- MIT
|
@@ -87,14 +101,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
87
101
|
requirements:
|
88
102
|
- - ">="
|
89
103
|
- !ruby/object:Gem::Version
|
90
|
-
version: 2.
|
104
|
+
version: 2.7.0
|
91
105
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
92
106
|
requirements:
|
93
107
|
- - ">="
|
94
108
|
- !ruby/object:Gem::Version
|
95
109
|
version: '0'
|
96
110
|
requirements: []
|
97
|
-
rubygems_version: 3.
|
111
|
+
rubygems_version: 3.3.7
|
98
112
|
signing_key:
|
99
113
|
specification_version: 4
|
100
114
|
summary: Generate RBS files from .proto files
|