Module: Dataleon::Internal::Util::SorbetRuntimeSupport Private
- Included in:
- Dataleon::Internal, Transport::BaseClient, Transport::PooledNetRequester, Type::ArrayOf, Type::BaseModel, Type::Boolean, Type::Converter, Type::Enum, Type::HashOf, Type::Union, Type::Unknown, Dataleon::Internal::Util
- Defined in:
- lib/dataleon/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.
909 910 911 912 913 914 915 916 917 918 919 920 |
# File 'lib/dataleon/internal/util.rb', line 909 def to_sorbet_type(type) case type in Dataleon::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.
874 875 876 877 878 879 880 881 882 883 |
# File 'lib/dataleon/internal/util.rb', line 874 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.
896 |
# File 'lib/dataleon/internal/util.rb', line 896 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.
890 |
# File 'lib/dataleon/internal/util.rb', line 890 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.
901 |
# File 'lib/dataleon/internal/util.rb', line 901 def to_sorbet_type = raise NotImplementedError |