Sha256: 1375c652fd1d03242576cf09200448f9200528ce18db3868f0ae423741df7acf

Contents?: true

Size: 1.83 KB

Versions: 19

Compression:

Stored size: 1.83 KB

Contents

module Steep
  module AST
    module Types
      module Logic
        class Base
          attr_reader location: untyped

          def subst: (Interface::Substitution s) -> self

          include Helper::NoFreeVariables

          include Helper::NoChild

          def hash: () -> Integer

          def ==: (untyped other) -> bool

          alias eql? ==

          def to_s: () -> String

          def level: () -> Array[Integer]
        end

        # A type for `!` (not) operator results.
        class Not < Base
          def initialize: (?location: untyped?) -> void
        end

        # A type for `foo.nil?` call results.
        class ReceiverIsNil < Base
          def initialize: (?location: untyped?) -> void
        end

        #
        class ReceiverIsNotNil < Base
          def initialize: (?location: untyped?) -> void
        end

        # A type for `receiver.is_a?(C)` call results.
        class ReceiverIsArg < Base
          def initialize: (?location: untyped?) -> void
        end

        # A type for `Class#===` call results.
        class ArgIsReceiver < Base
          def initialize: (?location: untyped?) -> void
        end

        # A type for `Object#===` call results.
        class ArgEqualsReceiver < Base
          def initialize: (?location: untyped?) -> void
        end

        # A type with truthy/falsy type environment.
        class Env < Base
          attr_reader truthy: TypeInference::TypeEnv

          attr_reader falsy: TypeInference::TypeEnv

          attr_reader type: t

          def initialize: (truthy: TypeInference::TypeEnv, falsy: TypeInference::TypeEnv, type: t, ?location: untyped) -> void

          def ==: (untyped other) -> bool

          alias eql? ==

          def hash: () -> Integer

          def inspect: () -> String

          alias to_s inspect
        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
steep-1.5.3 sig/steep/ast/types/logic.rbs
steep-1.5.2 sig/steep/ast/types/logic.rbs
steep-1.5.1 sig/steep/ast/types/logic.rbs
steep-1.5.0 sig/steep/ast/types/logic.rbs
steep-1.5.0.pre.6 sig/steep/ast/types/logic.rbs
steep-1.5.0.pre.5 sig/steep/ast/types/logic.rbs
steep-1.5.0.pre.4 sig/steep/ast/types/logic.rbs
steep-1.5.0.pre.3 sig/steep/ast/types/logic.rbs
steep-1.5.0.pre.2 sig/steep/ast/types/logic.rbs
steep-1.5.0.pre.1 sig/steep/ast/types/logic.rbs
steep-1.4.0 sig/steep/ast/types/logic.rbs
steep-1.4.0.dev.5 sig/steep/ast/types/logic.rbs
steep-1.4.0.dev.4 sig/steep/ast/types/logic.rbs
steep-1.4.0.dev.3 sig/steep/ast/types/logic.rbs
steep-1.3.2 sig/steep/ast/types/logic.rbs
steep-1.3.1 sig/steep/ast/types/logic.rbs
steep-1.4.0.dev.2 sig/steep/ast/types/logic.rbs
steep-1.4.0.dev.1 sig/steep/ast/types/logic.rbs
steep-1.3.0 sig/steep/ast/types/logic.rbs