Sha256: 35949391ad1772c6058c09b96b9faf8ec567864e807cfe748e51665232976f61

Contents?: true

Size: 810 Bytes

Versions: 239

Compression:

Stored size: 810 Bytes

Contents

# frozen_string_literal: true
# typed: true

module T::Types
  # Modeling AttachedClass properly at runtime would require additional
  # tracking, so at runtime we permit all values and rely on the static checker.
  # As AttachedClass is modeled statically as a type member on every singleton
  # class, this is consistent with the runtime behavior for all type members.
  class AttachedClassType < Base

    def initialize(); end

    # @override Base
    def name
      "T.attached_class"
    end

    # @override Base
    def valid?(obj)
      true
    end

    # @override Base
    private def subtype_of_single?(other)
      case other
      when AttachedClassType
        true
      else
        false
      end
    end

    module Private
      INSTANCE = AttachedClassType.new.freeze
    end
  end
end

Version data entries

239 entries across 239 versions & 1 rubygems

Version Path
sorbet-runtime-0.5.9102 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9099 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9094 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9090 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9088 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9084 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9076 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9070 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9064 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9058 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9057 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9053 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9052 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9048 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9045 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9042 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9041 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9035 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9033 lib/types/types/attached_class.rb
sorbet-runtime-0.5.9030 lib/types/types/attached_class.rb