module RBS class MethodType class Block attr_reader type: Types::Function attr_reader required: bool def initialize: (type: Types::Function, required: bool) -> void def ==: (untyped other) -> bool def to_json: (*untyped) -> String def sub: (Substitution) -> Block end attr_reader type_params: Array[Symbol] attr_reader type: Types::Function attr_reader block: Block? attr_reader location: Location? def initialize: (type_params: Array[Symbol], type: Types::Function, block: Block?, location: Location?) -> void def ==: (untyped other) -> bool def to_json: (*untyped) -> String def sub: (Substitution) -> MethodType def update: (?type_params: Array[Symbol], ?type: Types::Function, ?block: Block?, ?location: Location?) -> MethodType def free_variables: (?Set[Symbol] set) -> Set[Symbol] def map_type: () { (Types::t) -> Types::t } -> MethodType def each_type: () { (Types::t) -> void } -> void | () -> Enumerator[Types::t, void] def to_s: () -> String end end