File Manager
module RBS
class VarianceCalculator
type variance = :unused | :covariant | :contravariant | :invariant
class Result
attr_reader result: Hash[Symbol, variance]
def initialize: (variables: Array[Symbol]) -> void
def covariant: (Symbol) -> void
def contravariant: (Symbol) -> void
def invariant: (Symbol) -> void
def each: () { ([Symbol, variance]) -> void } -> void
def include?: (Symbol) -> bool
def compatible?: (Symbol, with_annotation: variance) -> bool
end
attr_reader builder: DefinitionBuilder
def initialize: (builder: DefinitionBuilder) -> void
def env: () -> Environment
def in_method_type: (method_type: MethodType, variables: Array[Symbol]) -> Result
def in_inherit: (name: TypeName, args: Array[Types::t], variables: Array[Symbol]) -> Result
def type: (Types::t, result: Result, context: variance) -> void
end
end
File Manager Version 1.0, Coded By Lucas
Email: hehe@yahoo.com