Sha256: 7bf019a1918b5a085c9edab015e30e95ef1022b96cf449440d1e0d3238d46998

Contents?: true

Size: 736 Bytes

Versions: 8

Compression:

Stored size: 736 Bytes

Contents

module RBS
  class Environment
    # ```rb
    # map = UseMap.build(environment)
    #
    # map.resolve?(TypeName.parse("TN"))   # => nil or resolved type name
    # ```
    #
    class UseMap
      class Table
        attr_reader known_types: Set[TypeName]

        attr_reader children: Hash[Namespace, Set[TypeName]]

        def initialize: () -> void

        def compute_children: () -> self
      end

      attr_reader use_dirs: Array[AST::Directives::Use]

      @map: Hash[Symbol, TypeName]

      @table: Table

      def initialize: (table: Table) -> void

      def resolve?: (TypeName) -> TypeName?

      def resolve: (TypeName) -> TypeName

      def build_map: (AST::Directives::Use::clause) -> self
    end
  end
end

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
rbs-3.9.0 sig/use_map.rbs
rbs-3.9.0.pre.2 sig/use_map.rbs
rbs-3.9.0.pre.1 sig/use_map.rbs
rbs-3.9.0.dev.1 sig/use_map.rbs
rbs-relaxed-3.9.0.1 sig/use_map.rbs
rbs-3.8.1 sig/use_map.rbs
rbs-3.8.0 sig/use_map.rbs
rbs-3.8.0.pre.1 sig/use_map.rbs