Sha256: a71d2c915a6c2fcb74bc62b6a1635995cf883fcdac7c358294af4998e7adc6f3

Contents?: true

Size: 607 Bytes

Versions: 160

Compression:

Stored size: 607 Bytes

Contents

# frozen_string_literal: true
# typed: true

# Use as a mixin with extend (`extend T::Generic`).
# Docs at https://hackpad.corp.stripe.com/Type-Validation-in-pay-server-1JaoTHir5Mo.
module T::Generic
  include T::Helpers
  include Kernel

  ### Class/Module Helpers ###

  def [](*types)
    self
  end

  def type_member(variance=:invariant, fixed: nil)
    T::Types::TypeMember.new(variance) # rubocop:disable PrisonGuard/UseOpusTypesShortcut
  end

  def type_template(variance=:invariant, fixed: nil)
    T::Types::TypeTemplate.new(variance) # rubocop:disable PrisonGuard/UseOpusTypesShortcut
  end
end

Version data entries

160 entries across 160 versions & 1 rubygems

Version Path
sorbet-runtime-0.4.4440 lib/types/generic.rb
sorbet-runtime-0.4.4439 lib/types/generic.rb
sorbet-runtime-0.4.4438 lib/types/generic.rb
sorbet-runtime-0.4.4437 lib/types/generic.rb
sorbet-runtime-0.4.4436 lib/types/generic.rb
sorbet-runtime-0.4.4435 lib/types/generic.rb
sorbet-runtime-0.4.4433 lib/types/generic.rb
sorbet-runtime-0.4.4432 lib/types/generic.rb
sorbet-runtime-0.4.4429 lib/types/generic.rb
sorbet-runtime-0.4.4428 lib/types/generic.rb
sorbet-runtime-0.4.4427 lib/types/generic.rb
sorbet-runtime-0.4.4426 lib/types/generic.rb
sorbet-runtime-0.4.4425 lib/types/generic.rb
sorbet-runtime-0.4.4423 lib/types/generic.rb
sorbet-runtime-0.4.4422 lib/types/generic.rb
sorbet-runtime-0.4.4421 lib/types/generic.rb
sorbet-runtime-0.4.4419 lib/types/generic.rb
sorbet-runtime-0.4.4418 lib/types/generic.rb
sorbet-runtime-0.4.4417 lib/types/generic.rb
sorbet-runtime-0.4.4416 lib/types/generic.rb