Sha256: de8d4ec5734958b49a8bdcab7e75b1ad4931999ba41fd40ee7facf6a227deb43

Contents?: true

Size: 581 Bytes

Versions: 182

Compression:

Stored size: 581 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, lower: T.untyped, upper: BasicObject)
    T::Types::TypeMember.new(variance)
  end

  def type_template(variance=:invariant, fixed: nil, lower: T.untyped, upper: BasicObject)
    T::Types::TypeTemplate.new(variance)
  end
end

Version data entries

182 entries across 182 versions & 1 rubygems

Version Path
sorbet-runtime-0.5.6519 lib/types/generic.rb
sorbet-runtime-0.5.6517 lib/types/generic.rb
sorbet-runtime-0.5.6514 lib/types/generic.rb
sorbet-runtime-0.5.6513 lib/types/generic.rb
sorbet-runtime-0.5.6511 lib/types/generic.rb
sorbet-runtime-0.5.6508 lib/types/generic.rb
sorbet-runtime-0.5.6500 lib/types/generic.rb
sorbet-runtime-0.5.6497 lib/types/generic.rb
sorbet-runtime-0.5.6492 lib/types/generic.rb
sorbet-runtime-0.5.6486 lib/types/generic.rb
sorbet-runtime-0.5.6485 lib/types/generic.rb
sorbet-runtime-0.5.6483 lib/types/generic.rb
sorbet-runtime-0.5.6482 lib/types/generic.rb
sorbet-runtime-0.5.6480 lib/types/generic.rb
sorbet-runtime-0.5.6479 lib/types/generic.rb
sorbet-runtime-0.5.6466 lib/types/generic.rb
sorbet-runtime-0.5.6465 lib/types/generic.rb
sorbet-runtime-0.5.6463 lib/types/generic.rb
sorbet-runtime-0.5.6461 lib/types/generic.rb
sorbet-runtime-0.5.6457 lib/types/generic.rb