Module: Dodopayments::Internal::Util::SorbetRuntimeSupport Private
- Included in:
- Dodopayments::Internal, Transport::BaseClient, Transport::PooledNetRequester, Type::ArrayOf, Type::BaseModel, Type::Boolean, Type::Converter, Type::Enum, Type::HashOf, Type::Union, Type::Unknown, Dodopayments::Internal::Util
- Defined in:
- lib/dodopayments/internal/util.rb
This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.
Defined Under Namespace
Classes: MissingSorbetRuntimeError
Class Method Summary collapse
- .to_sorbet_type(type) ⇒ Object private
Instance Method Summary collapse
- #const_missing(name) ⇒ Object private
- #define_sorbet_constant!(name, &blk) ⇒ Object private
- #sorbet_constant_defined?(name) ⇒ Boolean private
- #to_sorbet_type ⇒ Object private
Class Method Details
.to_sorbet_type(type) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
925 926 927 928 929 930 931 932 933 934 935 936 |
# File 'lib/dodopayments/internal/util.rb', line 925 def to_sorbet_type(type) case type in Dodopayments::Internal::Util::SorbetRuntimeSupport type.to_sorbet_type in Class | Module type in true | false T::Boolean else type.class end end |
Instance Method Details
#const_missing(name) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
890 891 892 893 894 895 896 897 898 899 |
# File 'lib/dodopayments/internal/util.rb', line 890 def const_missing(name) super unless sorbet_runtime_constants.key?(name) unless Object.const_defined?(:T) = "Trying to access a Sorbet constant #{name.inspect} without `sorbet-runtime`." raise MissingSorbetRuntimeError.new() end sorbet_runtime_constants.fetch(name).call end |
#define_sorbet_constant!(name, &blk) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
912 |
# File 'lib/dodopayments/internal/util.rb', line 912 def define_sorbet_constant!(name, &blk) = sorbet_runtime_constants.store(name, blk) |
#sorbet_constant_defined?(name) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
906 |
# File 'lib/dodopayments/internal/util.rb', line 906 def sorbet_constant_defined?(name) = sorbet_runtime_constants.key?(name) |
#to_sorbet_type ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
917 |
# File 'lib/dodopayments/internal/util.rb', line 917 def to_sorbet_type = raise NotImplementedError |