2021-10-07 18:10:06 +00:00

1406 lines
40 KiB
Ruby

# DO NOT EDIT MANUALLY
# This is an autogenerated file for types exported from the `rbi` gem.
# Please instead update this file by running `bin/tapioca gem rbi`.
# typed: true
module RBI; end
class RBI::ASTVisitor
abstract!
def initialize(*args, &blk); end
sig { abstract.params(node: T.nilable(AST::Node)).void }
def visit(node); end
sig { params(nodes: T::Array[AST::Node]).void }
def visit_all(nodes); end
private
sig { params(node: AST::Node).returns(String) }
def parse_expr(node); end
sig { params(node: AST::Node).returns(String) }
def parse_name(node); end
end
class RBI::Attr < ::RBI::NodeWithComments
include ::RBI::Indexable
abstract!
sig { params(name: Symbol, names: T::Array[Symbol], visibility: RBI::Visibility, sigs: T::Array[RBI::Sig], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment]).void }
def initialize(name, names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { abstract.returns(T::Array[String]) }
def fully_qualified_names; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.params(other: RBI::Node).void }
def merge_with(other); end
sig { returns(T::Array[Symbol]) }
def names; end
def names=(_arg0); end
sig { override.returns(T::Boolean) }
def oneline?; end
sig { returns(T::Array[RBI::Sig]) }
def sigs; end
sig { returns(RBI::Visibility) }
def visibility; end
def visibility=(_arg0); end
end
class RBI::AttrAccessor < ::RBI::Attr
sig { params(name: Symbol, names: Symbol, visibility: RBI::Visibility, sigs: T::Array[RBI::Sig], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::AttrAccessor).void)).void }
def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def fully_qualified_names; end
sig { override.returns(String) }
def to_s; end
end
class RBI::AttrReader < ::RBI::Attr
sig { params(name: Symbol, names: Symbol, visibility: RBI::Visibility, sigs: T::Array[RBI::Sig], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::AttrReader).void)).void }
def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def fully_qualified_names; end
sig { override.returns(String) }
def to_s; end
end
class RBI::AttrWriter < ::RBI::Attr
sig { params(name: Symbol, names: Symbol, visibility: RBI::Visibility, sigs: T::Array[RBI::Sig], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::AttrWriter).void)).void }
def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def fully_qualified_names; end
sig { override.returns(String) }
def to_s; end
end
class RBI::BlockParam < ::RBI::Param
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::BlockParam).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { override.returns(String) }
def to_s; end
end
class RBI::Class < ::RBI::Scope
sig { params(name: String, superclass_name: T.nilable(String), loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Class).void)).void }
def initialize(name, superclass_name: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(String) }
def fully_qualified_name; end
sig { returns(String) }
def name; end
def name=(_arg0); end
sig { override.params(v: RBI::Printer).void }
def print_header(v); end
sig { returns(T.nilable(String)) }
def superclass_name; end
def superclass_name=(_arg0); end
end
class RBI::Comment < ::RBI::Node
sig { params(text: String, loc: T.nilable(RBI::Loc)).void }
def initialize(text, loc: T.unsafe(nil)); end
sig { params(other: Object).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(String) }
def text; end
def text=(_arg0); end
end
class RBI::ConflictTree < ::RBI::Tree
sig { params(left_name: String, right_name: String).void }
def initialize(left_name: T.unsafe(nil), right_name: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(RBI::Tree) }
def left; end
def right; end
end
class RBI::Const < ::RBI::NodeWithComments
include ::RBI::Indexable
sig { params(name: String, value: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Const).void)).void }
def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { returns(String) }
def fully_qualified_name; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { returns(String) }
def name; end
sig { override.returns(String) }
def to_s; end
def value; end
end
class RBI::ConstBuilder < ::RBI::ASTVisitor
sig { void }
def initialize; end
sig { returns(T::Array[String]) }
def names; end
def names=(_arg0); end
sig { override.params(node: T.nilable(AST::Node)).void }
def visit(node); end
class << self
sig { params(node: T.nilable(AST::Node)).returns(T.nilable(String)) }
def visit(node); end
end
end
class RBI::EmptyComment < ::RBI::Comment
sig { params(loc: T.nilable(RBI::Loc)).void }
def initialize(loc: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
end
class RBI::Error < ::StandardError; end
class RBI::Extend < ::RBI::Mixin
include ::RBI::Indexable
sig { params(name: String, names: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Extend).void)).void }
def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.returns(String) }
def to_s; end
end
class RBI::File
sig { params(strictness: T.nilable(String), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(file: RBI::File).void)).void }
def initialize(strictness: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(node: RBI::Node).void }
def <<(node); end
sig { params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T::Array[RBI::Comment]) }
def comments; end
def comments=(_arg0); end
sig { params(out: T.any(IO, StringIO), indent: Integer, print_locs: T::Boolean).void }
def print(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil)); end
sig { returns(RBI::Tree) }
def root; end
sig { returns(T.nilable(String)) }
def strictness; end
sig { params(indent: Integer, print_locs: T::Boolean).returns(String) }
def string(indent: T.unsafe(nil), print_locs: T.unsafe(nil)); end
end
class RBI::Group < ::RBI::Tree
sig { params(kind: RBI::Group::Kind).void }
def initialize(kind); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(RBI::Group::Kind) }
def kind; end
end
class RBI::Group::Kind < ::T::Enum
enums do
Mixins = new
Helpers = new
TypeMembers = new
MixesInClassMethods = new
TStructFields = new
TEnums = new
Inits = new
Methods = new
Consts = new
end
end
class RBI::Helper < ::RBI::NodeWithComments
include ::RBI::Indexable
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Helper).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { returns(String) }
def name; end
sig { override.returns(String) }
def to_s; end
end
class RBI::Include < ::RBI::Mixin
include ::RBI::Indexable
sig { params(name: String, names: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Include).void)).void }
def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.returns(String) }
def to_s; end
end
class RBI::Index < ::RBI::Visitor
sig { void }
def initialize; end
sig { params(id: String).returns(T::Array[RBI::Node]) }
def [](id); end
sig { params(node: T.all(RBI::Indexable, RBI::Node)).void }
def index(node); end
sig { returns(T::Array[String]) }
def keys; end
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
class << self
sig { params(node: RBI::Node).returns(RBI::Index) }
def index(*node); end
end
end
module RBI::Indexable
interface!
sig { abstract.returns(T::Array[String]) }
def index_ids; end
end
class RBI::KwOptParam < ::RBI::Param
sig { params(name: String, value: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::KwOptParam).void)).void }
def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { override.returns(String) }
def to_s; end
sig { returns(String) }
def value; end
end
class RBI::KwParam < ::RBI::Param
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::KwParam).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { override.returns(String) }
def to_s; end
end
class RBI::KwRestParam < ::RBI::Param
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::KwRestParam).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { override.returns(String) }
def to_s; end
end
class RBI::Loc
sig { params(file: T.nilable(String), begin_line: T.nilable(Integer), end_line: T.nilable(Integer), begin_column: T.nilable(Integer), end_column: T.nilable(Integer)).void }
def initialize(file: T.unsafe(nil), begin_line: T.unsafe(nil), end_line: T.unsafe(nil), begin_column: T.unsafe(nil), end_column: T.unsafe(nil)); end
def begin_column; end
sig { returns(T.nilable(Integer)) }
def begin_line; end
def end_column; end
def end_line; end
sig { returns(T.nilable(String)) }
def file; end
sig { returns(String) }
def to_s; end
class << self
sig { params(file: String, ast_loc: T.any(Parser::Source::Map, Parser::Source::Range)).returns(RBI::Loc) }
def from_ast_loc(file, ast_loc); end
end
end
class RBI::Method < ::RBI::NodeWithComments
include ::RBI::Indexable
sig { params(name: String, params: T::Array[RBI::Param], is_singleton: T::Boolean, visibility: RBI::Visibility, sigs: T::Array[RBI::Sig], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Method).void)).void }
def initialize(name, params: T.unsafe(nil), is_singleton: T.unsafe(nil), visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(param: RBI::Param).void }
def <<(param); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { returns(String) }
def fully_qualified_name; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { returns(T::Boolean) }
def inline_params?; end
sig { returns(T::Boolean) }
def is_singleton; end
def is_singleton=(_arg0); end
sig { override.params(other: RBI::Node).void }
def merge_with(other); end
sig { returns(String) }
def name; end
def name=(_arg0); end
sig { override.returns(T::Boolean) }
def oneline?; end
sig { returns(T::Array[RBI::Param]) }
def params; end
sig { returns(T::Array[RBI::Sig]) }
def sigs; end
def sigs=(_arg0); end
sig { override.returns(String) }
def to_s; end
sig { returns(RBI::Visibility) }
def visibility; end
def visibility=(_arg0); end
end
class RBI::MixesInClassMethods < ::RBI::Mixin
include ::RBI::Indexable
sig { params(name: String, names: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::MixesInClassMethods).void)).void }
def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.returns(String) }
def to_s; end
end
class RBI::Mixin < ::RBI::NodeWithComments
abstract!
sig { params(name: String, names: T::Array[String], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment]).void }
def initialize(name, names, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { returns(T::Array[String]) }
def names; end
def names=(_arg0); end
end
class RBI::Module < ::RBI::Scope
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Module).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(String) }
def fully_qualified_name; end
sig { returns(String) }
def name; end
def name=(_arg0); end
sig { override.params(v: RBI::Printer).void }
def print_header(v); end
end
class RBI::Node
abstract!
sig { params(loc: T.nilable(RBI::Loc)).void }
def initialize(loc: T.unsafe(nil)); end
sig { abstract.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { params(_other: RBI::Node).returns(T::Boolean) }
def compatible_with?(_other); end
sig { void }
def detach; end
sig { returns(RBI::Group::Kind) }
def group_kind; end
sig { returns(T.nilable(RBI::Loc)) }
def loc; end
def loc=(_arg0); end
sig { params(other: RBI::Node).void }
def merge_with(other); end
sig { returns(T::Boolean) }
def oneline?; end
sig { returns(T.nilable(RBI::ConflictTree)) }
def parent_conflict_tree; end
sig { returns(T.nilable(RBI::Scope)) }
def parent_scope; end
sig { returns(T.nilable(RBI::Tree)) }
def parent_tree; end
def parent_tree=(_arg0); end
sig { params(out: T.any(IO, StringIO), indent: Integer, print_locs: T::Boolean).void }
def print(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil)); end
sig { params(node: RBI::Node).void }
def replace(node); end
sig { params(indent: Integer, print_locs: T::Boolean).returns(String) }
def string(indent: T.unsafe(nil), print_locs: T.unsafe(nil)); end
end
class RBI::NodeWithComments < ::RBI::Node
abstract!
sig { params(loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment]).void }
def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil)); end
sig { returns(T::Array[RBI::Comment]) }
def comments; end
def comments=(_arg0); end
sig { override.params(other: RBI::Node).void }
def merge_with(other); end
sig { override.returns(T::Boolean) }
def oneline?; end
end
class RBI::OptParam < ::RBI::Param
sig { params(name: String, value: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::OptParam).void)).void }
def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { returns(String) }
def value; end
end
class RBI::Param < ::RBI::NodeWithComments
abstract!
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment]).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T::Array[String]) }
def comments_lines; end
sig { returns(String) }
def name; end
sig { params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { override.returns(String) }
def to_s; end
end
class RBI::ParseError < ::StandardError
sig { params(message: String, location: RBI::Loc).void }
def initialize(message, location); end
sig { returns(RBI::Loc) }
def location; end
end
class RBI::Parser
sig { void }
def initialize; end
sig { params(path: String).returns(RBI::Tree) }
def parse_file(path); end
sig { params(string: String).returns(RBI::Tree) }
def parse_string(string); end
private
sig { params(content: String, file: String).returns(RBI::Tree) }
def parse(content, file:); end
class << self
sig { params(path: String).returns(RBI::Tree) }
def parse_file(path); end
sig { params(string: String).returns(RBI::Tree) }
def parse_string(string); end
end
end
class RBI::Printer < ::RBI::Visitor
sig { params(out: T.any(IO, StringIO), indent: Integer, print_locs: T::Boolean).void }
def initialize(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil)); end
sig { void }
def dedent; end
def in_visibility_group; end
def in_visibility_group=(_arg0); end
sig { void }
def indent; end
sig { returns(T.nilable(RBI::Node)) }
def previous_node; end
sig { params(string: String).void }
def print(string); end
sig { returns(T::Boolean) }
def print_locs; end
def print_locs=(_arg0); end
sig { params(string: String).void }
def printl(string); end
sig { params(string: T.nilable(String)).void }
def printn(string = T.unsafe(nil)); end
sig { params(string: T.nilable(String)).void }
def printt(string = T.unsafe(nil)); end
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
sig { override.params(nodes: T::Array[RBI::Node]).void }
def visit_all(nodes); end
sig { params(file: RBI::File).void }
def visit_file(file); end
end
class RBI::Private < ::RBI::Visibility
sig { params(loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Private).void)).void }
def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
end
class RBI::Protected < ::RBI::Visibility
sig { params(loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Protected).void)).void }
def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
end
class RBI::Public < ::RBI::Visibility
sig { params(loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Public).void)).void }
def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
end
class RBI::ReqParam < ::RBI::Param
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::ReqParam).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
end
class RBI::RestParam < ::RBI::Param
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::RestParam).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: T.nilable(Object)).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
sig { override.returns(String) }
def to_s; end
end
module RBI::Rewriters; end
class RBI::Rewriters::AddSigTemplates < ::RBI::Visitor
sig { params(with_todo_comment: T::Boolean).void }
def initialize(with_todo_comment: T.unsafe(nil)); end
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
private
sig { params(attr: RBI::Attr).void }
def add_attr_sig(attr); end
sig { params(method: RBI::Method).void }
def add_method_sig(method); end
sig { params(node: RBI::NodeWithComments).void }
def add_todo_comment(node); end
end
class RBI::Rewriters::GroupNodes < ::RBI::Visitor
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
end
class RBI::Rewriters::Merge
sig { params(left_name: String, right_name: String, keep: RBI::Rewriters::Merge::Keep).void }
def initialize(left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
sig { params(tree: RBI::Tree).returns(T::Array[RBI::Rewriters::Merge::Conflict]) }
def merge(tree); end
sig { returns(RBI::Tree) }
def tree; end
class << self
sig { params(left: RBI::Tree, right: RBI::Tree, left_name: String, right_name: String, keep: RBI::Rewriters::Merge::Keep).returns(RBI::Tree) }
def merge_trees(left, right, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
end
end
class RBI::Rewriters::Merge::Conflict < ::T::Struct
const :left, RBI::Node
const :left_name, String
const :right, RBI::Node
const :right_name, String
sig { returns(String) }
def to_s; end
class << self
def inherited(s); end
end
end
class RBI::Rewriters::Merge::ConflictTreeMerger < ::RBI::Visitor
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
sig { override.params(nodes: T::Array[RBI::Node]).void }
def visit_all(nodes); end
private
sig { params(left: RBI::Tree, right: RBI::Tree).void }
def merge_conflict_trees(left, right); end
end
class RBI::Rewriters::Merge::Keep < ::T::Enum
enums do
NONE = new
LEFT = new
RIGHT = new
end
end
class RBI::Rewriters::Merge::TreeMerger < ::RBI::Visitor
sig { params(output: RBI::Tree, left_name: String, right_name: String, keep: RBI::Rewriters::Merge::Keep).void }
def initialize(output, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
sig { returns(T::Array[RBI::Rewriters::Merge::Conflict]) }
def conflicts; end
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
private
sig { returns(RBI::Tree) }
def current_scope; end
sig { params(left: RBI::Scope, right: RBI::Scope).void }
def make_conflict_scope(left, right); end
sig { params(left: RBI::Node, right: RBI::Node).void }
def make_conflict_tree(left, right); end
sig { params(node: RBI::Node).returns(T.nilable(RBI::Node)) }
def previous_definition(node); end
sig { params(left: RBI::Scope, right: RBI::Scope).returns(RBI::Scope) }
def replace_scope_header(left, right); end
end
class RBI::Rewriters::NestNonPublicMethods < ::RBI::Visitor
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
end
class RBI::Rewriters::NestSingletonMethods < ::RBI::Visitor
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
end
class RBI::Rewriters::SortNodes < ::RBI::Visitor
sig { override.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
private
sig { params(kind: RBI::Group::Kind).returns(Integer) }
def group_rank(kind); end
sig { params(node: RBI::Node).returns(T.nilable(String)) }
def node_name(node); end
sig { params(node: RBI::Node).returns(Integer) }
def node_rank(node); end
end
class RBI::Scope < ::RBI::Tree
include ::RBI::Indexable
abstract!
def initialize(*args, &blk); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T.self_type) }
def dup_empty; end
sig { abstract.returns(String) }
def fully_qualified_name; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { params(v: RBI::Printer).void }
def print_body(v); end
sig { abstract.params(v: RBI::Printer).void }
def print_header(v); end
sig { override.returns(String) }
def to_s; end
end
class RBI::ScopeConflict < ::RBI::Tree
sig { params(left: RBI::Scope, right: RBI::Scope, left_name: String, right_name: String).void }
def initialize(left:, right:, left_name: T.unsafe(nil), right_name: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(RBI::Scope) }
def left; end
sig { override.returns(T::Boolean) }
def oneline?; end
def right; end
end
class RBI::Sig < ::RBI::Node
sig { params(params: T::Array[RBI::SigParam], return_type: T.nilable(String), is_abstract: T::Boolean, is_override: T::Boolean, is_overridable: T::Boolean, type_params: T::Array[String], checked: T.nilable(Symbol), loc: T.nilable(RBI::Loc), block: T.nilable(T.proc.params(node: RBI::Sig).void)).void }
def initialize(params: T.unsafe(nil), return_type: T.unsafe(nil), is_abstract: T.unsafe(nil), is_override: T.unsafe(nil), is_overridable: T.unsafe(nil), type_params: T.unsafe(nil), checked: T.unsafe(nil), loc: T.unsafe(nil), &block); end
sig { params(param: RBI::SigParam).void }
def <<(param); end
sig { params(other: Object).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T.nilable(Symbol)) }
def checked; end
def checked=(_arg0); end
sig { returns(T::Boolean) }
def inline_params?; end
sig { returns(T::Boolean) }
def is_abstract; end
def is_abstract=(_arg0); end
def is_overridable; end
def is_overridable=(_arg0); end
def is_override; end
def is_override=(_arg0); end
sig { override.returns(T::Boolean) }
def oneline?; end
sig { returns(T::Array[RBI::SigParam]) }
def params; end
sig { returns(T.nilable(String)) }
def return_type; end
def return_type=(_arg0); end
sig { returns(T::Array[String]) }
def type_params; end
end
class RBI::SigBuilder < ::RBI::ASTVisitor
sig { void }
def initialize; end
sig { returns(RBI::Sig) }
def current; end
def current=(_arg0); end
sig { override.params(node: T.nilable(AST::Node)).void }
def visit(node); end
sig { params(node: AST::Node).void }
def visit_send(node); end
class << self
sig { params(node: AST::Node).returns(RBI::Sig) }
def build(node); end
end
end
class RBI::SigParam < ::RBI::NodeWithComments
sig { params(name: String, type: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::SigParam).void)).void }
def initialize(name, type, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(other: Object).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T::Array[String]) }
def comments_lines; end
sig { returns(String) }
def name; end
sig { params(v: RBI::Printer, last: T::Boolean).void }
def print_comment_leading_space(v, last:); end
def type; end
end
class RBI::SingletonClass < ::RBI::Scope
sig { params(loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::SingletonClass).void)).void }
def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.returns(String) }
def fully_qualified_name; end
sig { override.params(v: RBI::Printer).void }
def print_header(v); end
end
class RBI::Struct < ::RBI::Scope
sig { params(name: String, members: T::Array[Symbol], keyword_init: T::Boolean, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(struct: RBI::Struct).void)).void }
def initialize(name, members: T.unsafe(nil), keyword_init: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(String) }
def fully_qualified_name; end
sig { returns(T::Boolean) }
def keyword_init; end
def keyword_init=(_arg0); end
sig { returns(T::Array[Symbol]) }
def members; end
def members=(_arg0); end
sig { returns(String) }
def name; end
def name=(_arg0); end
sig { override.params(v: RBI::Printer).void }
def print_header(v); end
end
class RBI::TEnum < ::RBI::Class
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(klass: RBI::TEnum).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
end
class RBI::TEnumBlock < ::RBI::NodeWithComments
include ::RBI::Indexable
sig { params(names: T::Array[String], loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::TEnumBlock).void)).void }
def initialize(names = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(name: String).void }
def <<(name); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T::Boolean) }
def empty?; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.params(other: RBI::Node).void }
def merge_with(other); end
sig { returns(T::Array[String]) }
def names; end
sig { override.returns(String) }
def to_s; end
end
class RBI::TStruct < ::RBI::Class
sig { params(name: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(klass: RBI::TStruct).void)).void }
def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
end
class RBI::TStructConst < ::RBI::TStructField
include ::RBI::Indexable
sig { params(name: String, type: String, default: T.nilable(String), loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::TStructConst).void)).void }
def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def fully_qualified_names; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.returns(String) }
def to_s; end
end
class RBI::TStructField < ::RBI::NodeWithComments
abstract!
sig { params(name: String, type: String, default: T.nilable(String), loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment]).void }
def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil)); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { returns(T.nilable(String)) }
def default; end
def default=(_arg0); end
sig { abstract.returns(T::Array[String]) }
def fully_qualified_names; end
sig { returns(String) }
def name; end
def name=(_arg0); end
def type; end
def type=(_arg0); end
end
class RBI::TStructProp < ::RBI::TStructField
include ::RBI::Indexable
sig { params(name: String, type: String, default: T.nilable(String), loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::TStructProp).void)).void }
def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(other: RBI::Node).returns(T::Boolean) }
def compatible_with?(other); end
sig { override.returns(T::Array[String]) }
def fully_qualified_names; end
sig { override.returns(T::Array[String]) }
def index_ids; end
sig { override.returns(String) }
def to_s; end
end
class RBI::Tree < ::RBI::NodeWithComments
sig { params(loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::Tree).void)).void }
def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { params(node: RBI::Node).void }
def <<(node); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { params(with_todo_comment: T::Boolean).void }
def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
sig { params(name: String, superclass_name: T.nilable(String), block: T.nilable(T.proc.params(scope: RBI::Scope).void)).void }
def create_class(name, superclass_name: T.unsafe(nil), &block); end
sig { params(name: String, value: String).void }
def create_constant(name, value:); end
sig { params(name: String).void }
def create_extend(name); end
sig { params(name: String).void }
def create_include(name); end
sig { params(name: String, parameters: T::Array[RBI::TypedParam], return_type: String, class_method: T::Boolean).void }
def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil)); end
sig { params(name: String).void }
def create_mixes_in_class_methods(name); end
sig { params(name: String, block: T.nilable(T.proc.params(scope: RBI::Scope).void)).void }
def create_module(name, &block); end
sig { params(constant: Module, block: T.nilable(T.proc.params(scope: RBI::Scope).void)).void }
def create_path(constant, &block); end
sig { params(name: String, value: String).void }
def create_type_member(name, value: T.unsafe(nil)); end
sig { returns(T::Boolean) }
def empty?; end
sig { void }
def group_nodes!; end
sig { returns(RBI::Index) }
def index; end
sig { params(other: RBI::Tree).returns(RBI::Tree) }
def merge(other); end
sig { void }
def nest_non_public_methods!; end
sig { void }
def nest_singleton_methods!; end
sig { returns(T::Array[RBI::Node]) }
def nodes; end
sig { override.returns(T::Boolean) }
def oneline?; end
sig { void }
def sort_nodes!; end
private
sig { params(node: RBI::Node).returns(RBI::Node) }
def create_node(node); end
sig { returns(T::Hash[String, RBI::Node]) }
def nodes_cache; end
sig { params(name: String).returns(T::Boolean) }
def valid_method_name?(name); end
end
RBI::Tree::SPECIAL_METHOD_NAMES = T.let(T.unsafe(nil), Array)
class RBI::TreeBuilder < ::RBI::ASTVisitor
sig { params(file: String, comments: T::Hash[Parser::Source::Map, T::Array[Parser::Source::Comment]]).void }
def initialize(file:, comments: T.unsafe(nil)); end
sig { params(comments: T::Array[Parser::Source::Comment]).void }
def assoc_dangling_comments(comments); end
sig { void }
def separate_header_comments; end
sig { returns(RBI::Tree) }
def tree; end
sig { override.params(node: T.nilable(Object)).void }
def visit(node); end
private
sig { returns(RBI::Tree) }
def current_scope; end
sig { returns(T::Array[RBI::Sig]) }
def current_sigs; end
sig { params(node: AST::Node).returns(T::Array[RBI::Comment]) }
def node_comments(node); end
sig { params(node: AST::Node).returns(RBI::Loc) }
def node_loc(node); end
sig { params(node: AST::Node).returns(T.nilable(RBI::Node)) }
def parse_block(node); end
sig { params(node: AST::Node).returns(RBI::Node) }
def parse_const_assign(node); end
sig { params(node: AST::Node).returns(RBI::Method) }
def parse_def(node); end
sig { params(node: AST::Node).returns(RBI::TEnumBlock) }
def parse_enum(node); end
sig { params(node: AST::Node).returns(RBI::Param) }
def parse_param(node); end
sig { params(node: AST::Node).returns(RBI::Scope) }
def parse_scope(node); end
sig { params(node: AST::Node).returns(T.nilable(RBI::Node)) }
def parse_send(node); end
sig { params(node: AST::Node).returns(RBI::Sig) }
def parse_sig(node); end
sig { params(node: AST::Node).returns(RBI::Struct) }
def parse_struct(node); end
sig { params(node: AST::Node).returns([String, String, T.nilable(String)]) }
def parse_tstruct_prop(node); end
sig { params(node: AST::Node).returns(T::Boolean) }
def struct_definition?(node); end
end
class RBI::TypeMember < ::RBI::NodeWithComments
sig { params(name: String, value: String, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment], block: T.nilable(T.proc.params(node: RBI::TypeMember).void)).void }
def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(String) }
def fully_qualified_name; end
sig { returns(String) }
def name; end
sig { override.returns(String) }
def to_s; end
def value; end
end
RBI::VERSION = T.let(T.unsafe(nil), String)
class RBI::Visibility < ::RBI::NodeWithComments
abstract!
sig { params(visibility: Symbol, loc: T.nilable(RBI::Loc), comments: T::Array[RBI::Comment]).void }
def initialize(visibility, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
sig { params(other: RBI::Visibility).returns(T::Boolean) }
def ==(other); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { returns(T::Boolean) }
def private?; end
sig { returns(T::Boolean) }
def protected?; end
sig { returns(T::Boolean) }
def public?; end
sig { returns(Symbol) }
def visibility; end
end
class RBI::VisibilityGroup < ::RBI::Tree
sig { params(visibility: RBI::Visibility).void }
def initialize(visibility); end
sig { override.params(v: RBI::Printer).void }
def accept_printer(v); end
sig { override.returns(T::Boolean) }
def oneline?; end
sig { returns(RBI::Visibility) }
def visibility; end
end
class RBI::Visitor
abstract!
def initialize(*args, &blk); end
sig { abstract.params(node: T.nilable(RBI::Node)).void }
def visit(node); end
sig { params(nodes: T::Array[RBI::Node]).void }
def visit_all(nodes); end
end