diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index 1e51053a73..93d33c77c4 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -13,7 +13,6 @@
// Installing all necessary extensions for vscode
// Taken from: .vscode/extensions.json
"extensions": [
- "kaiwood.endwise",
"Shopify.ruby-lsp",
"sorbet.sorbet-vscode-extension",
"github.vscode-github-actions",
diff --git a/.devcontainer/ubuntu18.04/devcontainer.json b/.devcontainer/ubuntu18.04/devcontainer.json
index d9363db75c..f5bdaa1eef 100644
--- a/.devcontainer/ubuntu18.04/devcontainer.json
+++ b/.devcontainer/ubuntu18.04/devcontainer.json
@@ -13,7 +13,6 @@
// Installing all necessary extensions for vscode
// Taken from: .vscode/extensions.json
"extensions": [
- "kaiwood.endwise",
"Shopify.ruby-lsp",
"sorbet.sorbet-vscode-extension",
"github.vscode-github-actions",
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
index 93789d0339..88fd850ae1 100644
--- a/.vscode/extensions.json
+++ b/.vscode/extensions.json
@@ -1,6 +1,5 @@
{
"recommendations": [
- "kaiwood.endwise",
"Shopify.ruby-lsp",
"sorbet.sorbet-vscode-extension",
"github.vscode-github-actions",
diff --git a/.vscode/ruby-lsp-activate.sh b/.vscode/ruby-lsp-activate.sh
new file mode 100644
index 0000000000..142acf76b4
--- /dev/null
+++ b/.vscode/ruby-lsp-activate.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+HOMEBREW_PREFIX="$(cd "$(dirname "$0")"/../ && pwd)"
+
+"${HOMEBREW_PREFIX}/bin/brew" install-bundler-gems --add-groups=style,typecheck,vscode >/dev/null 2>&1
+
+export PATH="${HOMEBREW_PREFIX}/Library/Homebrew/vendor/portable-ruby/current/bin:${PATH}"
+export BUNDLE_WITH="style:typecheck:vscode"
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 12a50f740d..dfd935ea64 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -9,14 +9,30 @@
"rubyLsp.rubyVersionManager": {
"identifier": "custom"
},
- "rubyLsp.customRubyCommand": "PATH=${workspaceFolder}/Library/Homebrew/vendor/portable-ruby/current/bin:$PATH",
+ "rubyLsp.customRubyCommand": "source ../../.vscode/ruby-lsp-activate.sh",
"rubyLsp.bundleGemfile": "Library/Homebrew/Gemfile",
"rubyLsp.formatter": "rubocop",
"[ruby]": {
"editor.defaultFormatter": "Shopify.ruby-lsp",
"editor.formatOnSave": true,
+ "editor.formatOnType": true,
"editor.semanticHighlighting.enabled": true,
},
+ "sorbet.enabled": true,
+ "sorbet.lspConfigs": [
+ {
+ "id": "default",
+ "name": "Brew Typecheck",
+ "description": "Default configuration",
+ "cwd": "${workspaceFolder}",
+ "command": [
+ "./bin/brew",
+ "typecheck",
+ "--lsp",
+ ]
+ }
+ ],
+ "sorbet.selectedLspConfigId": "default",
"shellcheck.customArgs": [
"--shell=bash",
"--enable=all",
diff --git a/Library/Homebrew/dev-cmd/typecheck.rb b/Library/Homebrew/dev-cmd/typecheck.rb
index 4e6af62914..fac268dd6f 100644
--- a/Library/Homebrew/dev-cmd/typecheck.rb
+++ b/Library/Homebrew/dev-cmd/typecheck.rb
@@ -24,6 +24,8 @@ module Homebrew
switch "--suggest-typed",
depends_on: "--update",
description: "Try upgrading `typed` sigils."
+ switch "--lsp",
+ description: "Start the Sorbet LSP server."
flag "--dir=",
description: "Typecheck all files in a specific directory."
flag "--file=",
@@ -33,6 +35,9 @@ module Homebrew
"in their paths (relative to the input path passed to Sorbet)."
conflicts "--dir", "--file"
+ conflicts "--lsp", "--update"
+ conflicts "--lsp", "--update-all"
+ conflicts "--lsp", "--fix"
named_args :none
end
@@ -80,6 +85,15 @@ module Homebrew
srb_exec << "--autocorrect"
end
+ if args.lsp?
+ srb_exec << "--lsp"
+ if (watchman = which("watchman", ORIGINAL_PATHS))
+ srb_exec << "--watchman-path" << watchman
+ else
+ srb_exec << "--disable-watchman"
+ end
+ end
+
srb_exec += ["--ignore", args.ignore] if args.ignore.present?
if args.file.present? || args.dir.present?
cd("sorbet") do
diff --git a/Library/Homebrew/sorbet/rbi/dsl/homebrew/dev_cmd/typecheck.rbi b/Library/Homebrew/sorbet/rbi/dsl/homebrew/dev_cmd/typecheck.rbi
index 1d34c34077..0ff0433940 100644
--- a/Library/Homebrew/sorbet/rbi/dsl/homebrew/dev_cmd/typecheck.rbi
+++ b/Library/Homebrew/sorbet/rbi/dsl/homebrew/dev_cmd/typecheck.rbi
@@ -23,6 +23,9 @@ class Homebrew::DevCmd::Typecheck::Args < Homebrew::CLI::Args
sig { returns(T.nilable(String)) }
def ignore; end
+ sig { returns(T::Boolean) }
+ def lsp?; end
+
sig { returns(T::Boolean) }
def suggest_typed?; end
diff --git a/Library/Homebrew/sorbet/rbi/gems/logger@1.6.0.rbi b/Library/Homebrew/sorbet/rbi/gems/logger@1.6.0.rbi
new file mode 100644
index 0000000000..5b699ff015
--- /dev/null
+++ b/Library/Homebrew/sorbet/rbi/gems/logger@1.6.0.rbi
@@ -0,0 +1,903 @@
+# typed: false
+
+# DO NOT EDIT MANUALLY
+# This is an autogenerated file for types exported from the `logger` gem.
+# Please instead update this file by running `bin/tapioca gem logger`.
+
+
+# \Class \Logger provides a simple but sophisticated logging utility that
+# you can use to create one or more
+# {event logs}[https://en.wikipedia.org/wiki/Logging_(software)#Event_logs]
+# for your program.
+# Each such log contains a chronological sequence of entries
+# that provides a record of the program's activities.
+#
+# == About the Examples
+#
+# All examples on this page assume that \Logger has been required:
+#
+# require 'logger'
+#
+# == Synopsis
+#
+# Create a log with Logger.new:
+#
+# # Single log file.
+# logger = Logger.new('t.log')
+# # Size-based rotated logging: 3 10-megabyte files.
+# logger = Logger.new('t.log', 3, 10485760)
+# # Period-based rotated logging: daily (also allowed: 'weekly', 'monthly').
+# logger = Logger.new('t.log', 'daily')
+# # Log to an IO stream.
+# logger = Logger.new($stdout)
+#
+# Add entries (level, message) with Logger#add:
+#
+# logger.add(Logger::DEBUG, 'Maximal debugging info')
+# logger.add(Logger::INFO, 'Non-error information')
+# logger.add(Logger::WARN, 'Non-error warning')
+# logger.add(Logger::ERROR, 'Non-fatal error')
+# logger.add(Logger::FATAL, 'Fatal error')
+# logger.add(Logger::UNKNOWN, 'Most severe')
+#
+# Close the log with Logger#close:
+#
+# logger.close
+#
+# == Entries
+#
+# You can add entries with method Logger#add:
+#
+# logger.add(Logger::DEBUG, 'Maximal debugging info')
+# logger.add(Logger::INFO, 'Non-error information')
+# logger.add(Logger::WARN, 'Non-error warning')
+# logger.add(Logger::ERROR, 'Non-fatal error')
+# logger.add(Logger::FATAL, 'Fatal error')
+# logger.add(Logger::UNKNOWN, 'Most severe')
+#
+# These shorthand methods also add entries:
+#
+# logger.debug('Maximal debugging info')
+# logger.info('Non-error information')
+# logger.warn('Non-error warning')
+# logger.error('Non-fatal error')
+# logger.fatal('Fatal error')
+# logger.unknown('Most severe')
+#
+# When you call any of these methods,
+# the entry may or may not be written to the log,
+# depending on the entry's severity and on the log level;
+# see {Log Level}[rdoc-ref:Logger@Log+Level]
+#
+# An entry always has:
+#
+# - A severity (the required argument to #add).
+# - An automatically created timestamp.
+#
+# And may also have:
+#
+# - A message.
+# - A program name.
+#
+# Example:
+#
+# logger = Logger.new($stdout)
+# logger.add(Logger::INFO, 'My message.', 'mung')
+# # => I, [2022-05-07T17:21:46.536234 #20536] INFO -- mung: My message.
+#
+# The default format for an entry is:
+#
+# "%s, [%s #%d] %5s -- %s: %s\n"
+#
+# where the values to be formatted are:
+#
+# - \Severity (one letter).
+# - Timestamp.
+# - Process id.
+# - \Severity (word).
+# - Program name.
+# - Message.
+#
+# You can use a different entry format by:
+#
+# - Setting a custom format proc (affects following entries);
+# see {formatter=}[Logger.html#attribute-i-formatter].
+# - Calling any of the methods above with a block
+# (affects only the one entry).
+# Doing so can have two benefits:
+#
+# - Context: the block can evaluate the entire program context
+# and create a context-dependent message.
+# - Performance: the block is not evaluated unless the log level
+# permits the entry actually to be written:
+#
+# logger.error { my_slow_message_generator }
+#
+# Contrast this with the string form, where the string is
+# always evaluated, regardless of the log level:
+#
+# logger.error("#{my_slow_message_generator}")
+#
+# === \Severity
+#
+# The severity of a log entry has two effects:
+#
+# - Determines whether the entry is selected for inclusion in the log;
+# see {Log Level}[rdoc-ref:Logger@Log+Level].
+# - Indicates to any log reader (whether a person or a program)
+# the relative importance of the entry.
+#
+# === Timestamp
+#
+# The timestamp for a log entry is generated automatically
+# when the entry is created.
+#
+# The logged timestamp is formatted by method
+# {Time#strftime}[rdoc-ref:Time#strftime]
+# using this format string:
+#
+# '%Y-%m-%dT%H:%M:%S.%6N'
+#
+# Example:
+#
+# logger = Logger.new($stdout)
+# logger.add(Logger::INFO)
+# # => I, [2022-05-07T17:04:32.318331 #20536] INFO -- : nil
+#
+# You can set a different format using method #datetime_format=.
+#
+# === Message
+#
+# The message is an optional argument to an entry method:
+#
+# logger = Logger.new($stdout)
+# logger.add(Logger::INFO, 'My message')
+# # => I, [2022-05-07T18:15:37.647581 #20536] INFO -- : My message
+#
+# For the default entry formatter, Logger::Formatter,
+# the message object may be:
+#
+# - A string: used as-is.
+# - An Exception: message.message is used.
+# - Anything else: message.inspect is used.
+#
+# *Note*: Logger::Formatter does not escape or sanitize
+# the message passed to it.
+# Developers should be aware that malicious data (user input)
+# may be in the message, and should explicitly escape untrusted data.
+#
+# You can use a custom formatter to escape message data;
+# see the example at {formatter=}[Logger.html#attribute-i-formatter].
+#
+# === Program Name
+#
+# The program name is an optional argument to an entry method:
+#
+# logger = Logger.new($stdout)
+# logger.add(Logger::INFO, 'My message', 'mung')
+# # => I, [2022-05-07T18:17:38.084716 #20536] INFO -- mung: My message
+#
+# The default program name for a new logger may be set in the call to
+# Logger.new via optional keyword argument +progname+:
+#
+# logger = Logger.new('t.log', progname: 'mung')
+#
+# The default program name for an existing logger may be set
+# by a call to method #progname=:
+#
+# logger.progname = 'mung'
+#
+# The current program name may be retrieved with method
+# {progname}[Logger.html#attribute-i-progname]:
+#
+# logger.progname # => "mung"
+#
+# == Log Level
+#
+# The log level setting determines whether an entry is actually
+# written to the log, based on the entry's severity.
+#
+# These are the defined severities (least severe to most severe):
+#
+# logger = Logger.new($stdout)
+# logger.add(Logger::DEBUG, 'Maximal debugging info')
+# # => D, [2022-05-07T17:57:41.776220 #20536] DEBUG -- : Maximal debugging info
+# logger.add(Logger::INFO, 'Non-error information')
+# # => I, [2022-05-07T17:59:14.349167 #20536] INFO -- : Non-error information
+# logger.add(Logger::WARN, 'Non-error warning')
+# # => W, [2022-05-07T18:00:45.337538 #20536] WARN -- : Non-error warning
+# logger.add(Logger::ERROR, 'Non-fatal error')
+# # => E, [2022-05-07T18:02:41.592912 #20536] ERROR -- : Non-fatal error
+# logger.add(Logger::FATAL, 'Fatal error')
+# # => F, [2022-05-07T18:05:24.703931 #20536] FATAL -- : Fatal error
+# logger.add(Logger::UNKNOWN, 'Most severe')
+# # => A, [2022-05-07T18:07:54.657491 #20536] ANY -- : Most severe
+#
+# The default initial level setting is Logger::DEBUG, the lowest level,
+# which means that all entries are to be written, regardless of severity:
+#
+# logger = Logger.new($stdout)
+# logger.level # => 0
+# logger.add(0, "My message")
+# # => D, [2022-05-11T15:10:59.773668 #20536] DEBUG -- : My message
+#
+# You can specify a different setting in a new logger
+# using keyword argument +level+ with an appropriate value:
+#
+# logger = Logger.new($stdout, level: Logger::ERROR)
+# logger = Logger.new($stdout, level: 'error')
+# logger = Logger.new($stdout, level: :error)
+# logger.level # => 3
+#
+# With this level, entries with severity Logger::ERROR and higher
+# are written, while those with lower severities are not written:
+#
+# logger = Logger.new($stdout, level: Logger::ERROR)
+# logger.add(3)
+# # => E, [2022-05-11T15:17:20.933362 #20536] ERROR -- : nil
+# logger.add(2) # Silent.
+#
+# You can set the log level for an existing logger
+# with method #level=:
+#
+# logger.level = Logger::ERROR
+#
+# These shorthand methods also set the level:
+#
+# logger.debug! # => 0
+# logger.info! # => 1
+# logger.warn! # => 2
+# logger.error! # => 3
+# logger.fatal! # => 4
+#
+# You can retrieve the log level with method #level.
+#
+# logger.level = Logger::ERROR
+# logger.level # => 3
+#
+# These methods return whether a given
+# level is to be written:
+#
+# logger.level = Logger::ERROR
+# logger.debug? # => false
+# logger.info? # => false
+# logger.warn? # => false
+# logger.error? # => true
+# logger.fatal? # => true
+#
+# == Log File Rotation
+#
+# By default, a log file is a single file that grows indefinitely
+# (until explicitly closed); there is no file rotation.
+#
+# To keep log files to a manageable size,
+# you can use _log_ _file_ _rotation_, which uses multiple log files:
+#
+# - Each log file has entries for a non-overlapping
+# time interval.
+# - Only the most recent log file is open and active;
+# the others are closed and inactive.
+#
+# === Size-Based Rotation
+#
+# For size-based log file rotation, call Logger.new with:
+#
+# - Argument +logdev+ as a file path.
+# - Argument +shift_age+ with a positive integer:
+# the number of log files to be in the rotation.
+# - Argument +shift_size+ as a positive integer:
+# the maximum size (in bytes) of each log file;
+# defaults to 1048576 (1 megabyte).
+#
+# Examples:
+#
+# logger = Logger.new('t.log', 3) # Three 1-megabyte files.
+# logger = Logger.new('t.log', 5, 10485760) # Five 10-megabyte files.
+#
+# For these examples, suppose:
+#
+# logger = Logger.new('t.log', 3)
+#
+# Logging begins in the new log file, +t.log+;
+# the log file is "full" and ready for rotation
+# when a new entry would cause its size to exceed +shift_size+.
+#
+# The first time +t.log+ is full:
+#
+# - +t.log+ is closed and renamed to +t.log.0+.
+# - A new file +t.log+ is opened.
+#
+# The second time +t.log+ is full:
+#
+# - +t.log.0 is renamed as +t.log.1+.
+# - +t.log+ is closed and renamed to +t.log.0+.
+# - A new file +t.log+ is opened.
+#
+# Each subsequent time that +t.log+ is full,
+# the log files are rotated:
+#
+# - +t.log.1+ is removed.
+# - +t.log.0 is renamed as +t.log.1+.
+# - +t.log+ is closed and renamed to +t.log.0+.
+# - A new file +t.log+ is opened.
+#
+# === Periodic Rotation
+#
+# For periodic rotation, call Logger.new with:
+#
+# - Argument +logdev+ as a file path.
+# - Argument +shift_age+ as a string period indicator.
+#
+# Examples:
+#
+# logger = Logger.new('t.log', 'daily') # Rotate log files daily.
+# logger = Logger.new('t.log', 'weekly') # Rotate log files weekly.
+# logger = Logger.new('t.log', 'monthly') # Rotate log files monthly.
+#
+# Example:
+#
+# logger = Logger.new('t.log', 'daily')
+#
+# When the given period expires:
+#
+# - The base log file, +t.log+ is closed and renamed
+# with a date-based suffix such as +t.log.20220509+.
+# - A new log file +t.log+ is opened.
+# - Nothing is removed.
+#
+# The default format for the suffix is '%Y%m%d',
+# which produces a suffix similar to the one above.
+# You can set a different format using create-time option
+# +shift_period_suffix+;
+# see details and suggestions at
+# {Time#strftime}[rdoc-ref:Time#strftime].
+class Logger
+ include ::Logger::Severity
+
+ # :call-seq:
+ # Logger.new(logdev, shift_age = 0, shift_size = 1048576, **options)
+ #
+ # With the single argument +logdev+,
+ # returns a new logger with all default options:
+ #
+ # Logger.new('t.log') # => #
+ #
+ # Argument +logdev+ must be one of:
+ #
+ # - A string filepath: entries are to be written
+ # to the file at that path; if the file at that path exists,
+ # new entries are appended.
+ # - An IO stream (typically +$stdout+, +$stderr+. or an open file):
+ # entries are to be written to the given stream.
+ # - +nil+ or +File::NULL+: no entries are to be written.
+ #
+ # Examples:
+ #
+ # Logger.new('t.log')
+ # Logger.new($stdout)
+ #
+ # The keyword options are:
+ #
+ # - +level+: sets the log level; default value is Logger::DEBUG.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level]:
+ #
+ # Logger.new('t.log', level: Logger::ERROR)
+ #
+ # - +progname+: sets the default program name; default is +nil+.
+ # See {Program Name}[rdoc-ref:Logger@Program+Name]:
+ #
+ # Logger.new('t.log', progname: 'mung')
+ #
+ # - +formatter+: sets the entry formatter; default is +nil+.
+ # See {formatter=}[Logger.html#attribute-i-formatter].
+ # - +datetime_format+: sets the format for entry timestamp;
+ # default is +nil+.
+ # See #datetime_format=.
+ # - +binmode+: sets whether the logger writes in binary mode;
+ # default is +false+.
+ # - +shift_period_suffix+: sets the format for the filename suffix
+ # for periodic log file rotation; default is '%Y%m%d'.
+ # See {Periodic Rotation}[rdoc-ref:Logger@Periodic+Rotation].
+ #
+ # @return [Logger] a new instance of Logger
+ #
+ # source://logger//logger.rb#578
+ def initialize(logdev, shift_age = T.unsafe(nil), shift_size = T.unsafe(nil), level: T.unsafe(nil), progname: T.unsafe(nil), formatter: T.unsafe(nil), datetime_format: T.unsafe(nil), binmode: T.unsafe(nil), shift_period_suffix: T.unsafe(nil)); end
+
+ # Writes the given +msg+ to the log with no formatting;
+ # returns the number of characters written,
+ # or +nil+ if no log device exists:
+ #
+ # logger = Logger.new($stdout)
+ # logger << 'My message.' # => 10
+ #
+ # Output:
+ #
+ # My message.
+ #
+ # source://logger//logger.rb#684
+ def <<(msg); end
+
+ # Creates a log entry, which may or may not be written to the log,
+ # depending on the entry's severity and on the log level.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level]
+ # and {Entries}[rdoc-ref:Logger@Entries] for details.
+ #
+ # Examples:
+ #
+ # logger = Logger.new($stdout, progname: 'mung')
+ # logger.add(Logger::INFO)
+ # logger.add(Logger::ERROR, 'No good')
+ # logger.add(Logger::ERROR, 'No good', 'gnum')
+ #
+ # Output:
+ #
+ # I, [2022-05-12T16:25:31.469726 #36328] INFO -- mung: mung
+ # E, [2022-05-12T16:25:55.349414 #36328] ERROR -- mung: No good
+ # E, [2022-05-12T16:26:35.841134 #36328] ERROR -- gnum: No good
+ #
+ # These convenience methods have implicit severity:
+ #
+ # - #debug.
+ # - #info.
+ # - #warn.
+ # - #error.
+ # - #fatal.
+ # - #unknown.
+ #
+ # source://logger//logger.rb#651
+ def add(severity, message = T.unsafe(nil), progname = T.unsafe(nil)); end
+
+ # Closes the logger; returns +nil+:
+ #
+ # logger = Logger.new('t.log')
+ # logger.close # => nil
+ # logger.info('foo') # Prints "log writing failed. closed stream"
+ #
+ # Related: Logger#reopen.
+ #
+ # source://logger//logger.rb#731
+ def close; end
+
+ # Returns the date-time format; see #datetime_format=.
+ #
+ # source://logger//logger.rb#438
+ def datetime_format; end
+
+ # Sets the date-time format.
+ #
+ # Argument +datetime_format+ should be either of these:
+ #
+ # - A string suitable for use as a format for method
+ # {Time#strftime}[rdoc-ref:Time#strftime].
+ # - +nil+: the logger uses '%Y-%m-%dT%H:%M:%S.%6N'.
+ #
+ # source://logger//logger.rb#432
+ def datetime_format=(datetime_format); end
+
+ # Equivalent to calling #add with severity Logger::DEBUG.
+ #
+ # source://logger//logger.rb#690
+ def debug(progname = T.unsafe(nil), &block); end
+
+ # Sets the log level to Logger::DEBUG.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # source://logger//logger.rb#487
+ def debug!; end
+
+ # Returns +true+ if the log level allows entries with severity
+ # Logger::DEBUG to be written, +false+ otherwise.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # @return [Boolean]
+ #
+ # source://logger//logger.rb#482
+ def debug?; end
+
+ # Equivalent to calling #add with severity Logger::ERROR.
+ #
+ # source://logger//logger.rb#708
+ def error(progname = T.unsafe(nil), &block); end
+
+ # Sets the log level to Logger::ERROR.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # source://logger//logger.rb#520
+ def error!; end
+
+ # Returns +true+ if the log level allows entries with severity
+ # Logger::ERROR to be written, +false+ otherwise.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # @return [Boolean]
+ #
+ # source://logger//logger.rb#515
+ def error?; end
+
+ # Equivalent to calling #add with severity Logger::FATAL.
+ #
+ # source://logger//logger.rb#714
+ def fatal(progname = T.unsafe(nil), &block); end
+
+ # Sets the log level to Logger::FATAL.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # source://logger//logger.rb#531
+ def fatal!; end
+
+ # Returns +true+ if the log level allows entries with severity
+ # Logger::FATAL to be written, +false+ otherwise.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # @return [Boolean]
+ #
+ # source://logger//logger.rb#526
+ def fatal?; end
+
+ # Sets or retrieves the logger entry formatter proc.
+ #
+ # When +formatter+ is +nil+, the logger uses Logger::Formatter.
+ #
+ # When +formatter+ is a proc, a new entry is formatted by the proc,
+ # which is called with four arguments:
+ #
+ # - +severity+: The severity of the entry.
+ # - +time+: A Time object representing the entry's timestamp.
+ # - +progname+: The program name for the entry.
+ # - +msg+: The message for the entry (string or string-convertible object).
+ #
+ # The proc should return a string containing the formatted entry.
+ #
+ # This custom formatter uses
+ # {String#dump}[rdoc-ref:String#dump]
+ # to escape the message string:
+ #
+ # logger = Logger.new($stdout, progname: 'mung')
+ # original_formatter = logger.formatter || Logger::Formatter.new
+ # logger.formatter = proc { |severity, time, progname, msg|
+ # original_formatter.call(severity, time, progname, msg.dump)
+ # }
+ # logger.add(Logger::INFO, "hello \n ''")
+ # logger.add(Logger::INFO, "\f\x00\xff\\\"")
+ #
+ # Output:
+ #
+ # I, [2022-05-13T13:16:29.637488 #8492] INFO -- mung: "hello \n ''"
+ # I, [2022-05-13T13:16:29.637610 #8492] INFO -- mung: "\f\x00\xFF\\\""
+ #
+ # source://logger//logger.rb#473
+ def formatter; end
+
+ # Sets or retrieves the logger entry formatter proc.
+ #
+ # When +formatter+ is +nil+, the logger uses Logger::Formatter.
+ #
+ # When +formatter+ is a proc, a new entry is formatted by the proc,
+ # which is called with four arguments:
+ #
+ # - +severity+: The severity of the entry.
+ # - +time+: A Time object representing the entry's timestamp.
+ # - +progname+: The program name for the entry.
+ # - +msg+: The message for the entry (string or string-convertible object).
+ #
+ # The proc should return a string containing the formatted entry.
+ #
+ # This custom formatter uses
+ # {String#dump}[rdoc-ref:String#dump]
+ # to escape the message string:
+ #
+ # logger = Logger.new($stdout, progname: 'mung')
+ # original_formatter = logger.formatter || Logger::Formatter.new
+ # logger.formatter = proc { |severity, time, progname, msg|
+ # original_formatter.call(severity, time, progname, msg.dump)
+ # }
+ # logger.add(Logger::INFO, "hello \n ''")
+ # logger.add(Logger::INFO, "\f\x00\xff\\\"")
+ #
+ # Output:
+ #
+ # I, [2022-05-13T13:16:29.637488 #8492] INFO -- mung: "hello \n ''"
+ # I, [2022-05-13T13:16:29.637610 #8492] INFO -- mung: "\f\x00\xFF\\\""
+ #
+ # source://logger//logger.rb#473
+ def formatter=(_arg0); end
+
+ # Equivalent to calling #add with severity Logger::INFO.
+ #
+ # source://logger//logger.rb#696
+ def info(progname = T.unsafe(nil), &block); end
+
+ # Sets the log level to Logger::INFO.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # source://logger//logger.rb#498
+ def info!; end
+
+ # Returns +true+ if the log level allows entries with severity
+ # Logger::INFO to be written, +false+ otherwise.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # @return [Boolean]
+ #
+ # source://logger//logger.rb#493
+ def info?; end
+
+ # Logging severity threshold (e.g. Logger::INFO).
+ #
+ # source://logger//logger.rb#383
+ def level; end
+
+ # Sets the log level; returns +severity+.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # Argument +severity+ may be an integer, a string, or a symbol:
+ #
+ # logger.level = Logger::ERROR # => 3
+ # logger.level = 3 # => 3
+ # logger.level = 'error' # => "error"
+ # logger.level = :error # => :error
+ #
+ # Logger#sev_threshold= is an alias for Logger#level=.
+ #
+ # source://logger//logger.rb#399
+ def level=(severity); end
+
+ # Creates a log entry, which may or may not be written to the log,
+ # depending on the entry's severity and on the log level.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level]
+ # and {Entries}[rdoc-ref:Logger@Entries] for details.
+ #
+ # Examples:
+ #
+ # logger = Logger.new($stdout, progname: 'mung')
+ # logger.add(Logger::INFO)
+ # logger.add(Logger::ERROR, 'No good')
+ # logger.add(Logger::ERROR, 'No good', 'gnum')
+ #
+ # Output:
+ #
+ # I, [2022-05-12T16:25:31.469726 #36328] INFO -- mung: mung
+ # E, [2022-05-12T16:25:55.349414 #36328] ERROR -- mung: No good
+ # E, [2022-05-12T16:26:35.841134 #36328] ERROR -- gnum: No good
+ #
+ # These convenience methods have implicit severity:
+ #
+ # - #debug.
+ # - #info.
+ # - #warn.
+ # - #error.
+ # - #fatal.
+ # - #unknown.
+ #
+ # source://logger//logger.rb#651
+ def log(severity, message = T.unsafe(nil), progname = T.unsafe(nil)); end
+
+ # Program name to include in log messages.
+ #
+ # source://logger//logger.rb#422
+ def progname; end
+
+ # Program name to include in log messages.
+ #
+ # source://logger//logger.rb#422
+ def progname=(_arg0); end
+
+ # Sets the logger's output stream:
+ #
+ # - If +logdev+ is +nil+, reopens the current output stream.
+ # - If +logdev+ is a filepath, opens the indicated file for append.
+ # - If +logdev+ is an IO stream
+ # (usually $stdout, $stderr, or an open File object),
+ # opens the stream for append.
+ #
+ # Example:
+ #
+ # logger = Logger.new('t.log')
+ # logger.add(Logger::ERROR, 'one')
+ # logger.close
+ # logger.add(Logger::ERROR, 'two') # Prints 'log writing failed. closed stream'
+ # logger.reopen
+ # logger.add(Logger::ERROR, 'three')
+ # logger.close
+ # File.readlines('t.log')
+ # # =>
+ # # ["# Logfile created on 2022-05-12 14:21:19 -0500 by logger.rb/v1.5.0\n",
+ # # "E, [2022-05-12T14:21:27.596726 #22428] ERROR -- : one\n",
+ # # "E, [2022-05-12T14:23:05.847241 #22428] ERROR -- : three\n"]
+ #
+ # source://logger//logger.rb#619
+ def reopen(logdev = T.unsafe(nil)); end
+
+ # Logging severity threshold (e.g. Logger::INFO).
+ #
+ # source://logger//logger.rb#383
+ def sev_threshold; end
+
+ # Sets the log level; returns +severity+.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # Argument +severity+ may be an integer, a string, or a symbol:
+ #
+ # logger.level = Logger::ERROR # => 3
+ # logger.level = 3 # => 3
+ # logger.level = 'error' # => "error"
+ # logger.level = :error # => :error
+ #
+ # Logger#sev_threshold= is an alias for Logger#level=.
+ #
+ # source://logger//logger.rb#399
+ def sev_threshold=(severity); end
+
+ # Equivalent to calling #add with severity Logger::UNKNOWN.
+ #
+ # source://logger//logger.rb#720
+ def unknown(progname = T.unsafe(nil), &block); end
+
+ # Equivalent to calling #add with severity Logger::WARN.
+ #
+ # source://logger//logger.rb#702
+ def warn(progname = T.unsafe(nil), &block); end
+
+ # Sets the log level to Logger::WARN.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # source://logger//logger.rb#509
+ def warn!; end
+
+ # Returns +true+ if the log level allows entries with severity
+ # Logger::WARN to be written, +false+ otherwise.
+ # See {Log Level}[rdoc-ref:Logger@Log+Level].
+ #
+ # @return [Boolean]
+ #
+ # source://logger//logger.rb#504
+ def warn?; end
+
+ # Adjust the log level during the block execution for the current Fiber only
+ #
+ # logger.with_level(:debug) do
+ # logger.debug { "Hello" }
+ # end
+ #
+ # source://logger//logger.rb#408
+ def with_level(severity); end
+
+ private
+
+ # source://logger//logger.rb#744
+ def format_message(severity, datetime, progname, msg); end
+
+ # source://logger//logger.rb#740
+ def format_severity(severity); end
+end
+
+# Default formatter for log messages.
+class Logger::Formatter
+ # @return [Formatter] a new instance of Formatter
+ #
+ # source://logger//logger/formatter.rb#11
+ def initialize; end
+
+ # source://logger//logger/formatter.rb#15
+ def call(severity, time, progname, msg); end
+
+ # Returns the value of attribute datetime_format.
+ #
+ # source://logger//logger/formatter.rb#9
+ def datetime_format; end
+
+ # Sets the attribute datetime_format
+ #
+ # @param value the value to set the attribute datetime_format to.
+ #
+ # source://logger//logger/formatter.rb#9
+ def datetime_format=(_arg0); end
+
+ private
+
+ # source://logger//logger/formatter.rb#21
+ def format_datetime(time); end
+
+ # source://logger//logger/formatter.rb#25
+ def msg2str(msg); end
+end
+
+# source://logger//logger/formatter.rb#7
+Logger::Formatter::DatetimeFormat = T.let(T.unsafe(nil), String)
+
+# source://logger//logger/formatter.rb#6
+Logger::Formatter::Format = T.let(T.unsafe(nil), String)
+
+# Device used for logging messages.
+class Logger::LogDevice
+ include ::Logger::Period
+ include ::MonitorMixin
+
+ # @return [LogDevice] a new instance of LogDevice
+ #
+ # source://logger//logger/log_device.rb#14
+ def initialize(log = T.unsafe(nil), shift_age: T.unsafe(nil), shift_size: T.unsafe(nil), shift_period_suffix: T.unsafe(nil), binmode: T.unsafe(nil)); end
+
+ # source://logger//logger/log_device.rb#52
+ def close; end
+
+ # Returns the value of attribute dev.
+ #
+ # source://logger//logger/log_device.rb#10
+ def dev; end
+
+ # Returns the value of attribute filename.
+ #
+ # source://logger//logger/log_device.rb#11
+ def filename; end
+
+ # source://logger//logger/log_device.rb#62
+ def reopen(log = T.unsafe(nil)); end
+
+ # source://logger//logger/log_device.rb#31
+ def write(message); end
+
+ private
+
+ # source://logger//logger/log_device.rb#119
+ def add_log_header(file); end
+
+ # source://logger//logger/log_device.rb#125
+ def check_shift_log; end
+
+ # source://logger//logger/log_device.rb#103
+ def create_logfile(filename); end
+
+ # source://logger//logger/log_device.rb#145
+ def lock_shift_log; end
+
+ # source://logger//logger/log_device.rb#95
+ def open_logfile(filename); end
+
+ # source://logger//logger/log_device.rb#79
+ def set_dev(log); end
+
+ # source://logger//logger/log_device.rb#176
+ def shift_log_age; end
+
+ # source://logger//logger/log_device.rb#188
+ def shift_log_period(period_end); end
+end
+
+module Logger::Period
+ private
+
+ # source://logger//logger/period.rb#9
+ def next_rotate_time(now, shift_age); end
+
+ # source://logger//logger/period.rb#31
+ def previous_period_end(now, shift_age); end
+
+ class << self
+ # source://logger//logger/period.rb#9
+ def next_rotate_time(now, shift_age); end
+
+ # source://logger//logger/period.rb#31
+ def previous_period_end(now, shift_age); end
+ end
+end
+
+# source://logger//logger/period.rb#7
+Logger::Period::SiD = T.let(T.unsafe(nil), Integer)
+
+# \Severity label for logging (max 5 chars).
+#
+# source://logger//logger.rb#738
+Logger::SEV_LABEL = T.let(T.unsafe(nil), Array)
+
+# Logging severity.
+module Logger::Severity
+ class << self
+ # source://logger//logger/severity.rb#29
+ def coerce(severity); end
+ end
+end
+
+# source://logger//logger/severity.rb#19
+Logger::Severity::LEVELS = T.let(T.unsafe(nil), Hash)
diff --git a/Library/Homebrew/sorbet/rbi/gems/rbs@3.5.2.rbi b/Library/Homebrew/sorbet/rbi/gems/rbs@3.5.2.rbi
new file mode 100644
index 0000000000..fb56821037
--- /dev/null
+++ b/Library/Homebrew/sorbet/rbi/gems/rbs@3.5.2.rbi
@@ -0,0 +1,6703 @@
+# typed: true
+
+# DO NOT EDIT MANUALLY
+# This is an autogenerated file for types exported from the `rbs` gem.
+# Please instead update this file by running `bin/tapioca gem rbs`.
+
+
+# source://rbs//lib/rbs/namespace.rb#120
+module Kernel
+ # source://rbs//lib/rbs/namespace.rb#121
+ def Namespace(name); end
+
+ # source://rbs//lib/rbs/type_name.rb#93
+ def TypeName(string); end
+end
+
+# source://rbs//lib/rbs/version.rb#3
+module RBS
+ class << self
+ # source://rbs//lib/rbs.rb#67
+ def logger; end
+
+ # Returns the value of attribute logger_level.
+ #
+ # source://rbs//lib/rbs.rb#64
+ def logger_level; end
+
+ # source://rbs//lib/rbs.rb#76
+ def logger_level=(level); end
+
+ # Returns the value of attribute logger_output.
+ #
+ # source://rbs//lib/rbs.rb#65
+ def logger_output; end
+
+ # source://rbs//lib/rbs.rb#71
+ def logger_output=(val); end
+
+ # source://rbs//lib/rbs.rb#81
+ def print_warning; end
+ end
+end
+
+# source://rbs//lib/rbs/ast/type_param.rb#4
+module RBS::AST; end
+
+# source://rbs//lib/rbs/ast/annotation.rb#5
+class RBS::AST::Annotation
+ # @return [Annotation] a new instance of Annotation
+ #
+ # source://rbs//lib/rbs/ast/annotation.rb#9
+ def initialize(string:, location:); end
+
+ # source://rbs//lib/rbs/ast/annotation.rb#14
+ def ==(other); end
+
+ # source://rbs//lib/rbs/ast/annotation.rb#14
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/annotation.rb#20
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/annotation.rb#7
+ def location; end
+
+ # Returns the value of attribute string.
+ #
+ # source://rbs//lib/rbs/ast/annotation.rb#6
+ def string; end
+
+ # source://rbs//lib/rbs/ast/annotation.rb#24
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/comment.rb#5
+class RBS::AST::Comment
+ # @return [Comment] a new instance of Comment
+ #
+ # source://rbs//lib/rbs/ast/comment.rb#9
+ def initialize(string:, location:); end
+
+ # source://rbs//lib/rbs/ast/comment.rb#14
+ def ==(other); end
+
+ # source://rbs//lib/rbs/ast/comment.rb#14
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/comment.rb#20
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/comment.rb#7
+ def location; end
+
+ # Returns the value of attribute string.
+ #
+ # source://rbs//lib/rbs/ast/comment.rb#6
+ def string; end
+
+ # source://rbs//lib/rbs/ast/comment.rb#24
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#5
+module RBS::AST::Declarations; end
+
+# source://rbs//lib/rbs/ast/declarations.rb#383
+class RBS::AST::Declarations::AliasDecl < ::RBS::AST::Declarations::Base
+ # @return [AliasDecl] a new instance of AliasDecl
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#386
+ def initialize(new_name:, old_name:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#393
+ def ==(other); end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#384
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#393
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#401
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#384
+ def location; end
+
+ # Returns the value of attribute new_name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#384
+ def new_name; end
+
+ # Returns the value of attribute old_name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#384
+ def old_name; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#6
+class RBS::AST::Declarations::Base; end
+
+# source://rbs//lib/rbs/ast/declarations.rb#55
+class RBS::AST::Declarations::Class < ::RBS::AST::Declarations::Base
+ include ::RBS::AST::Declarations::NestedDeclarationHelper
+ include ::RBS::AST::Declarations::MixinHelper
+
+ # @return [Class] a new instance of Class
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#97
+ def initialize(name:, type_params:, super_class:, members:, annotations:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#107
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#93
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#95
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#107
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#117
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#94
+ def location; end
+
+ # Returns the value of attribute members.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#91
+ def members; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#89
+ def name; end
+
+ # Returns the value of attribute super_class.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#92
+ def super_class; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#121
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type_params.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#90
+ def type_params; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#56
+class RBS::AST::Declarations::Class::Super
+ # @return [Super] a new instance of Super
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#61
+ def initialize(name:, args:, location:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#67
+ def ==(other); end
+
+ # Returns the value of attribute args.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#58
+ def args; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#67
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#73
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#59
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#57
+ def name; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#77
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#406
+class RBS::AST::Declarations::ClassAlias < ::RBS::AST::Declarations::AliasDecl
+ # source://rbs//lib/rbs/ast/declarations.rb#407
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#311
+class RBS::AST::Declarations::Constant < ::RBS::AST::Declarations::Base
+ # @return [Constant] a new instance of Constant
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#317
+ def initialize(name:, type:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#324
+ def ==(other); end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#315
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#324
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#332
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#314
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#312
+ def name; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#336
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#313
+ def type; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#347
+class RBS::AST::Declarations::Global < ::RBS::AST::Declarations::Base
+ # @return [Global] a new instance of Global
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#353
+ def initialize(name:, type:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#360
+ def ==(other); end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#351
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#360
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#368
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#350
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#348
+ def name; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#372
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#349
+ def type; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#223
+class RBS::AST::Declarations::Interface < ::RBS::AST::Declarations::Base
+ include ::RBS::AST::Declarations::MixinHelper
+
+ # @return [Interface] a new instance of Interface
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#233
+ def initialize(name:, type_params:, members:, annotations:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#242
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#227
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#229
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#242
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#251
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#228
+ def location; end
+
+ # Returns the value of attribute members.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#226
+ def members; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#224
+ def name; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#255
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type_params.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#225
+ def type_params; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#35
+module RBS::AST::Declarations::MixinHelper
+ # source://rbs//lib/rbs/ast/declarations.rb#36
+ def each_mixin(&block); end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#135
+class RBS::AST::Declarations::Module < ::RBS::AST::Declarations::Base
+ include ::RBS::AST::Declarations::NestedDeclarationHelper
+ include ::RBS::AST::Declarations::MixinHelper
+
+ # @return [Module] a new instance of Module
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#185
+ def initialize(name:, type_params:, members:, self_types:, annotations:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#195
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#181
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#183
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#195
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#205
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#180
+ def location; end
+
+ # Returns the value of attribute members.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#179
+ def members; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#177
+ def name; end
+
+ # Returns the value of attribute self_types.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#182
+ def self_types; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#209
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type_params.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#178
+ def type_params; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#136
+class RBS::AST::Declarations::Module::Self
+ # @return [Self] a new instance of Self
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#141
+ def initialize(name:, args:, location:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#147
+ def ==(other); end
+
+ # Returns the value of attribute args.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#138
+ def args; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#147
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#153
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#139
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#137
+ def name; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#157
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#165
+ def to_s; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#418
+class RBS::AST::Declarations::ModuleAlias < ::RBS::AST::Declarations::AliasDecl
+ # source://rbs//lib/rbs/ast/declarations.rb#419
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#9
+module RBS::AST::Declarations::NestedDeclarationHelper
+ # source://rbs//lib/rbs/ast/declarations.rb#22
+ def each_decl; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#10
+ def each_member; end
+end
+
+# source://rbs//lib/rbs/ast/declarations.rb#268
+class RBS::AST::Declarations::TypeAlias < ::RBS::AST::Declarations::Base
+ # @return [TypeAlias] a new instance of TypeAlias
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#276
+ def initialize(name:, type_params:, type:, annotations:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#285
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#272
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#274
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#285
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#294
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#273
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#269
+ def name; end
+
+ # source://rbs//lib/rbs/ast/declarations.rb#298
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#271
+ def type; end
+
+ # Returns the value of attribute type_params.
+ #
+ # source://rbs//lib/rbs/ast/declarations.rb#270
+ def type_params; end
+end
+
+# source://rbs//lib/rbs/ast/directives.rb#5
+module RBS::AST::Directives; end
+
+# source://rbs//lib/rbs/ast/directives.rb#6
+class RBS::AST::Directives::Base; end
+
+# source://rbs//lib/rbs/ast/directives.rb#9
+class RBS::AST::Directives::Use < ::RBS::AST::Directives::Base
+ # @return [Use] a new instance of Use
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#31
+ def initialize(clauses:, location:); end
+
+ # Returns the value of attribute clauses.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#29
+ def clauses; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#29
+ def location; end
+end
+
+# source://rbs//lib/rbs/ast/directives.rb#10
+class RBS::AST::Directives::Use::SingleClause
+ # @return [SingleClause] a new instance of SingleClause
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#13
+ def initialize(type_name:, new_name:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#11
+ def location; end
+
+ # Returns the value of attribute new_name.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#11
+ def new_name; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#11
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/ast/directives.rb#20
+class RBS::AST::Directives::Use::WildcardClause
+ # @return [WildcardClause] a new instance of WildcardClause
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#23
+ def initialize(namespace:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#21
+ def location; end
+
+ # Returns the value of attribute namespace.
+ #
+ # source://rbs//lib/rbs/ast/directives.rb#21
+ def namespace; end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#5
+module RBS::AST::Members; end
+
+# source://rbs//lib/rbs/ast/members.rb#397
+class RBS::AST::Members::Alias < ::RBS::AST::Members::Base
+ # @return [Alias] a new instance of Alias
+ #
+ # source://rbs//lib/rbs/ast/members.rb#405
+ def initialize(new_name:, old_name:, kind:, annotations:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/members.rb#414
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#401
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#403
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/members.rb#414
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#423
+ def hash; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/members.rb#439
+ def instance?; end
+
+ # Returns the value of attribute kind.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#400
+ def kind; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#402
+ def location; end
+
+ # Returns the value of attribute new_name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#398
+ def new_name; end
+
+ # Returns the value of attribute old_name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#399
+ def old_name; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/members.rb#443
+ def singleton?; end
+
+ # source://rbs//lib/rbs/ast/members.rb#427
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#327
+class RBS::AST::Members::AttrAccessor < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Attribute
+
+ # source://rbs//lib/rbs/ast/members.rb#330
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#309
+class RBS::AST::Members::AttrReader < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Attribute
+
+ # source://rbs//lib/rbs/ast/members.rb#312
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#345
+class RBS::AST::Members::AttrWriter < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Attribute
+
+ # source://rbs//lib/rbs/ast/members.rb#348
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#258
+module RBS::AST::Members::Attribute
+ # source://rbs//lib/rbs/ast/members.rb#268
+ def initialize(name:, type:, ivar_name:, kind:, annotations:, location:, comment:, visibility: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/ast/members.rb#279
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#263
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#265
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/members.rb#279
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#290
+ def hash; end
+
+ # Returns the value of attribute ivar_name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#262
+ def ivar_name; end
+
+ # Returns the value of attribute kind.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#261
+ def kind; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#264
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#259
+ def name; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#260
+ def type; end
+
+ # source://rbs//lib/rbs/ast/members.rb#294
+ def update(name: T.unsafe(nil), type: T.unsafe(nil), ivar_name: T.unsafe(nil), kind: T.unsafe(nil), annotations: T.unsafe(nil), location: T.unsafe(nil), comment: T.unsafe(nil), visibility: T.unsafe(nil)); end
+
+ # Returns the value of attribute visibility.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#266
+ def visibility; end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#6
+class RBS::AST::Members::Base; end
+
+# source://rbs//lib/rbs/ast/members.rb#157
+class RBS::AST::Members::ClassInstanceVariable < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Var
+
+ # source://rbs//lib/rbs/ast/members.rb#160
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#171
+class RBS::AST::Members::ClassVariable < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Var
+
+ # source://rbs//lib/rbs/ast/members.rb#174
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#228
+class RBS::AST::Members::Extend < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Mixin
+
+ # source://rbs//lib/rbs/ast/members.rb#231
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#213
+class RBS::AST::Members::Include < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Mixin
+
+ # source://rbs//lib/rbs/ast/members.rb#216
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#143
+class RBS::AST::Members::InstanceVariable < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Var
+
+ # source://rbs//lib/rbs/ast/members.rb#146
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#363
+module RBS::AST::Members::LocationOnly
+ # source://rbs//lib/rbs/ast/members.rb#366
+ def initialize(location:); end
+
+ # source://rbs//lib/rbs/ast/members.rb#370
+ def ==(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#370
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#376
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#364
+ def location; end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#9
+class RBS::AST::Members::MethodDefinition < ::RBS::AST::Members::Base
+ # @return [MethodDefinition] a new instance of MethodDefinition
+ #
+ # source://rbs//lib/rbs/ast/members.rb#53
+ def initialize(name:, kind:, overloads:, annotations:, location:, comment:, overloading:, visibility:); end
+
+ # source://rbs//lib/rbs/ast/members.rb#64
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#47
+ def annotations; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#49
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/members.rb#64
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#75
+ def hash; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/members.rb#79
+ def instance?; end
+
+ # Returns the value of attribute kind.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#45
+ def kind; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#48
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#44
+ def name; end
+
+ # Returns the value of attribute overloading.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#50
+ def overloading; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/members.rb#87
+ def overloading?; end
+
+ # Returns the value of attribute overloads.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#46
+ def overloads; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/members.rb#83
+ def singleton?; end
+
+ # source://rbs//lib/rbs/ast/members.rb#104
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/ast/members.rb#91
+ def update(name: T.unsafe(nil), kind: T.unsafe(nil), overloads: T.unsafe(nil), annotations: T.unsafe(nil), location: T.unsafe(nil), comment: T.unsafe(nil), overloading: T.unsafe(nil), visibility: T.unsafe(nil)); end
+
+ # Returns the value of attribute visibility.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#51
+ def visibility; end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#10
+class RBS::AST::Members::MethodDefinition::Overload
+ # @return [Overload] a new instance of Overload
+ #
+ # source://rbs//lib/rbs/ast/members.rb#13
+ def initialize(method_type:, annotations:); end
+
+ # source://rbs//lib/rbs/ast/members.rb#18
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#11
+ def annotations; end
+
+ # source://rbs//lib/rbs/ast/members.rb#18
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#22
+ def hash; end
+
+ # Returns the value of attribute method_type.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#11
+ def method_type; end
+
+ # source://rbs//lib/rbs/ast/members.rb#32
+ def sub(subst); end
+
+ # source://rbs//lib/rbs/ast/members.rb#36
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/ast/members.rb#28
+ def update(annotations: T.unsafe(nil), method_type: T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#185
+module RBS::AST::Members::Mixin
+ # source://rbs//lib/rbs/ast/members.rb#192
+ def initialize(name:, args:, annotations:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/members.rb#200
+ def ==(other); end
+
+ # Returns the value of attribute annotations.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#188
+ def annotations; end
+
+ # Returns the value of attribute args.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#187
+ def args; end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#190
+ def comment; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/members.rb#204
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#208
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#189
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#186
+ def name; end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#243
+class RBS::AST::Members::Prepend < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::Mixin
+
+ # source://rbs//lib/rbs/ast/members.rb#246
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#389
+class RBS::AST::Members::Private < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::LocationOnly
+
+ # source://rbs//lib/rbs/ast/members.rb#392
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#381
+class RBS::AST::Members::Public < ::RBS::AST::Members::Base
+ include ::RBS::AST::Members::LocationOnly
+
+ # source://rbs//lib/rbs/ast/members.rb#384
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/ast/members.rb#119
+module RBS::AST::Members::Var
+ # source://rbs//lib/rbs/ast/members.rb#125
+ def initialize(name:, type:, location:, comment:); end
+
+ # source://rbs//lib/rbs/ast/members.rb#132
+ def ==(other); end
+
+ # Returns the value of attribute comment.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#123
+ def comment; end
+
+ # source://rbs//lib/rbs/ast/members.rb#132
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/members.rb#138
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#122
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#120
+ def name; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/ast/members.rb#121
+ def type; end
+end
+
+# source://rbs//lib/rbs/ast/type_param.rb#5
+class RBS::AST::TypeParam
+ # @return [TypeParam] a new instance of TypeParam
+ #
+ # source://rbs//lib/rbs/ast/type_param.rb#8
+ def initialize(name:, variance:, upper_bound:, location:); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#25
+ def ==(other); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#25
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#35
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/ast/type_param.rb#6
+ def location; end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#58
+ def map_type(&block); end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/ast/type_param.rb#6
+ def name; end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#49
+ def rename(name); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#39
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#110
+ def to_s; end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#16
+ def unchecked!(value = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/ast/type_param.rb#21
+ def unchecked?; end
+
+ # Returns the value of attribute upper_bound.
+ #
+ # source://rbs//lib/rbs/ast/type_param.rb#6
+ def upper_bound; end
+
+ # Returns the value of attribute variance.
+ #
+ # source://rbs//lib/rbs/ast/type_param.rb#6
+ def variance; end
+
+ class << self
+ # source://rbs//lib/rbs/ast/type_param.rb#93
+ def rename(params, new_names:); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#71
+ def resolve_variables(params); end
+
+ # source://rbs//lib/rbs/ast/type_param.rb#81
+ def subst_var(vars, type); end
+ end
+end
+
+# source://rbs//lib/rbs/ancestor_graph.rb#4
+class RBS::AncestorGraph
+ # @return [AncestorGraph] a new instance of AncestorGraph
+ #
+ # source://rbs//lib/rbs/ancestor_graph.rb#13
+ def initialize(env:, ancestor_builder: T.unsafe(nil)); end
+
+ # Returns the value of attribute ancestor_builder.
+ #
+ # source://rbs//lib/rbs/ancestor_graph.rb#9
+ def ancestor_builder; end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#19
+ def build; end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#32
+ def build_ancestors(node, ancestors); end
+
+ # Returns the value of attribute children.
+ #
+ # source://rbs//lib/rbs/ancestor_graph.rb#11
+ def children; end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#64
+ def each_ancestor(node, yielded: T.unsafe(nil), &block); end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#56
+ def each_child(node, &block); end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#78
+ def each_descendant(node, yielded: T.unsafe(nil), &block); end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#48
+ def each_parent(node, &block); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/ancestor_graph.rb#8
+ def env; end
+
+ # Returns the value of attribute parents.
+ #
+ # source://rbs//lib/rbs/ancestor_graph.rb#10
+ def parents; end
+
+ # source://rbs//lib/rbs/ancestor_graph.rb#43
+ def register(parent:, child:); end
+end
+
+# source://rbs//lib/rbs/ancestor_graph.rb#5
+class RBS::AncestorGraph::InstanceNode < ::Struct
+ def type_name; end
+ def type_name=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/ancestor_graph.rb#6
+class RBS::AncestorGraph::SingletonNode < ::Struct
+ def type_name; end
+ def type_name=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#19
+class RBS::BaseError < ::StandardError; end
+
+# source://rbs//lib/rbs/buffer.rb#4
+class RBS::Buffer
+ # @return [Buffer] a new instance of Buffer
+ #
+ # source://rbs//lib/rbs/buffer.rb#8
+ def initialize(name:, content:); end
+
+ # Returns the value of attribute content.
+ #
+ # source://rbs//lib/rbs/buffer.rb#6
+ def content; end
+
+ # source://rbs//lib/rbs/buffer.rb#58
+ def inspect; end
+
+ # source://rbs//lib/rbs/buffer.rb#54
+ def last_position; end
+
+ # source://rbs//lib/rbs/buffer.rb#13
+ def lines; end
+
+ # source://rbs//lib/rbs/buffer.rb#44
+ def loc_to_pos(loc); end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/buffer.rb#5
+ def name; end
+
+ # source://rbs//lib/rbs/buffer.rb#32
+ def pos_to_loc(pos); end
+
+ # source://rbs//lib/rbs/buffer.rb#17
+ def ranges; end
+end
+
+# source://rbs//lib/rbs/builtin_names.rb#4
+module RBS::BuiltinNames; end
+
+# source://rbs//lib/rbs/builtin_names.rb#45
+RBS::BuiltinNames::Array = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#37
+RBS::BuiltinNames::BasicObject = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#43
+RBS::BuiltinNames::Class = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#41
+RBS::BuiltinNames::Comparable = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#42
+RBS::BuiltinNames::Enumerable = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#48
+RBS::BuiltinNames::Enumerator = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#55
+RBS::BuiltinNames::FalseClass = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#52
+RBS::BuiltinNames::Float = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#46
+RBS::BuiltinNames::Hash = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#51
+RBS::BuiltinNames::Integer = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#39
+RBS::BuiltinNames::Kernel = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#44
+RBS::BuiltinNames::Module = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#5
+class RBS::BuiltinNames::Name
+ # @return [Name] a new instance of Name
+ #
+ # source://rbs//lib/rbs/builtin_names.rb#8
+ def initialize(name:); end
+
+ # source://rbs//lib/rbs/builtin_names.rb#16
+ def instance_type(*args); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/builtin_names.rb#20
+ def instance_type?(type); end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/builtin_names.rb#6
+ def name; end
+
+ # source://rbs//lib/rbs/builtin_names.rb#24
+ def singleton_type; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/builtin_names.rb#28
+ def singleton_type?(type); end
+
+ # source://rbs//lib/rbs/builtin_names.rb#12
+ def to_s; end
+
+ class << self
+ # source://rbs//lib/rbs/builtin_names.rb#32
+ def define(name, namespace: T.unsafe(nil)); end
+ end
+end
+
+# source://rbs//lib/rbs/builtin_names.rb#56
+RBS::BuiltinNames::Numeric = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#38
+RBS::BuiltinNames::Object = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#47
+RBS::BuiltinNames::Range = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#53
+RBS::BuiltinNames::Regexp = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#49
+RBS::BuiltinNames::Set = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#40
+RBS::BuiltinNames::String = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#50
+RBS::BuiltinNames::Symbol = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/builtin_names.rb#54
+RBS::BuiltinNames::TrueClass = T.let(T.unsafe(nil), RBS::BuiltinNames::Name)
+
+# source://rbs//lib/rbs/cli/colored_io.rb#4
+class RBS::CLI; end
+
+# source://rbs//lib/rbs/cli/colored_io.rb#5
+class RBS::CLI::ColoredIO
+ # @return [ColoredIO] a new instance of ColoredIO
+ #
+ # source://rbs//lib/rbs/cli/colored_io.rb#8
+ def initialize(stdout:); end
+
+ # source://rbs//lib/rbs/cli/colored_io.rb#28
+ def puts(*_arg0, **_arg1, &_arg2); end
+
+ # source://rbs//lib/rbs/cli/colored_io.rb#20
+ def puts_green(string); end
+
+ # source://rbs//lib/rbs/cli/colored_io.rb#12
+ def puts_red(string); end
+
+ # Returns the value of attribute stdout.
+ #
+ # source://rbs//lib/rbs/cli/colored_io.rb#6
+ def stdout; end
+
+ private
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/cli/colored_io.rb#43
+ def are_colors_disabled?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/cli/colored_io.rb#39
+ def are_colors_supported?; end
+
+ # https://github.com/rubygems/rubygems/blob/ed65279100234a17d65d71fe26de5083984ac5b8/bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb#L99-L109
+ #
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/cli/colored_io.rb#35
+ def can_display_colors?; end
+end
+
+# source://rbs//lib/rbs/collection/sources/base.rb#4
+module RBS::Collection; end
+
+# source://rbs//lib/rbs/collection/cleaner.rb#5
+class RBS::Collection::Cleaner
+ # @return [Cleaner] a new instance of Cleaner
+ #
+ # source://rbs//lib/rbs/collection/cleaner.rb#8
+ def initialize(lockfile_path:); end
+
+ # source://rbs//lib/rbs/collection/cleaner.rb#12
+ def clean; end
+
+ # Returns the value of attribute lock.
+ #
+ # source://rbs//lib/rbs/collection/cleaner.rb#6
+ def lock; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/cleaner.rb#30
+ def needed?(gem_name, version); end
+end
+
+# This class represent the configuration file.
+#
+# source://rbs//lib/rbs/collection/config.rb#7
+class RBS::Collection::Config
+ # @return [Config] a new instance of Config
+ #
+ # source://rbs//lib/rbs/collection/config.rb#49
+ def initialize(data, config_path:); end
+
+ # Returns the value of attribute config_path.
+ #
+ # source://rbs//lib/rbs/collection/config.rb#19
+ def config_path; end
+
+ # Returns the value of attribute data.
+ #
+ # source://rbs//lib/rbs/collection/config.rb#19
+ def data; end
+
+ # source://rbs//lib/rbs/collection/config.rb#54
+ def gem(gem_name); end
+
+ # source://rbs//lib/rbs/collection/config.rb#74
+ def gems; end
+
+ # source://rbs//lib/rbs/collection/config.rb#58
+ def repo_path; end
+
+ # source://rbs//lib/rbs/collection/config.rb#62
+ def repo_path_data; end
+
+ # source://rbs//lib/rbs/collection/config.rb#66
+ def sources; end
+
+ class << self
+ # source://rbs//lib/rbs/collection/config.rb#21
+ def find_config_path; end
+
+ # source://rbs//lib/rbs/collection/config.rb#41
+ def from_path(path); end
+
+ # Generate a rbs lockfile from Gemfile.lock to `config_path`.
+ # If `with_lockfile` is true, it respects existing rbs lockfile.
+ #
+ # source://rbs//lib/rbs/collection/config.rb#34
+ def generate_lockfile(config_path:, definition:, with_lockfile: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/collection/config.rb#45
+ def to_lockfile_path(config_path); end
+ end
+end
+
+# source://rbs//lib/rbs/collection/config.rb#8
+class RBS::Collection::Config::CollectionNotAvailable < ::StandardError
+ # @return [CollectionNotAvailable] a new instance of CollectionNotAvailable
+ #
+ # source://rbs//lib/rbs/collection/config.rb#9
+ def initialize; end
+end
+
+# source://rbs//lib/rbs/collection/config/lockfile.rb#6
+class RBS::Collection::Config::Lockfile
+ # @return [Lockfile] a new instance of Lockfile
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#9
+ def initialize(lockfile_path:, path:, gemfile_lock_path:); end
+
+ # @raise [CollectionNotAvailable]
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#73
+ def check_rbs_availability!; end
+
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#18
+ def fullpath; end
+
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#22
+ def gemfile_lock_fullpath; end
+
+ # Returns the value of attribute gemfile_lock_path.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#7
+ def gemfile_lock_path; end
+
+ # Returns the value of attribute gems.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#7
+ def gems; end
+
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#65
+ def library_data(lib); end
+
+ # Returns the value of attribute lockfile_dir.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#7
+ def lockfile_dir; end
+
+ # Returns the value of attribute lockfile_path.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#7
+ def lockfile_path; end
+
+ # Returns the value of attribute path.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#7
+ def path; end
+
+ # Returns the value of attribute sources.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#7
+ def sources; end
+
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#28
+ def to_lockfile; end
+
+ class << self
+ # source://rbs//lib/rbs/collection/config/lockfile.rb#42
+ def from_lockfile(lockfile_path:, data:); end
+ end
+end
+
+# source://rbs//lib/rbs/collection/config/lockfile_generator.rb#6
+class RBS::Collection::Config::LockfileGenerator
+ # @return [LockfileGenerator] a new instance of LockfileGenerator
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#31
+ def initialize(config:, definition:, with_lockfile:); end
+
+ # Returns the value of attribute config.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#23
+ def config; end
+
+ # Returns the value of attribute definition.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#23
+ def definition; end
+
+ # Returns the value of attribute existing_lockfile.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#23
+ def existing_lockfile; end
+
+ # Returns the value of attribute gem_entries.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#23
+ def gem_entries; end
+
+ # Returns the value of attribute gem_hash.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#23
+ def gem_hash; end
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#59
+ def generate; end
+
+ # Returns the value of attribute lockfile.
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#23
+ def lockfile; end
+
+ private
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#91
+ def assign_gem(name:, version:, skip: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#152
+ def assign_stdlib(name:, from_gem:); end
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#184
+ def find_best_version(version:, versions:); end
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#178
+ def find_source(name:); end
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#83
+ def validate_gemfile_lock_path!(lock:, gemfile_lock_path:); end
+
+ class << self
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#25
+ def generate(config:, definition:, with_lockfile: T.unsafe(nil)); end
+ end
+end
+
+# source://rbs//lib/rbs/collection/config/lockfile_generator.rb#7
+class RBS::Collection::Config::LockfileGenerator::GemfileLockMismatchError < ::StandardError
+ # @return [GemfileLockMismatchError] a new instance of GemfileLockMismatchError
+ #
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#8
+ def initialize(expected:, actual:); end
+
+ # source://rbs//lib/rbs/collection/config/lockfile_generator.rb#13
+ def message; end
+end
+
+# source://rbs//lib/rbs/collection/config.rb#17
+RBS::Collection::Config::PATH = T.let(T.unsafe(nil), Pathname)
+
+# source://rbs//lib/rbs/collection/installer.rb#5
+class RBS::Collection::Installer
+ # @return [Installer] a new instance of Installer
+ #
+ # source://rbs//lib/rbs/collection/installer.rb#9
+ def initialize(lockfile_path:, stdout: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/collection/installer.rb#14
+ def install_from_lockfile; end
+
+ # Returns the value of attribute lockfile.
+ #
+ # source://rbs//lib/rbs/collection/installer.rb#6
+ def lockfile; end
+
+ # Returns the value of attribute stdout.
+ #
+ # source://rbs//lib/rbs/collection/installer.rb#7
+ def stdout; end
+end
+
+# source://rbs//lib/rbs/collection/sources/base.rb#5
+module RBS::Collection::Sources
+ class << self
+ # source://rbs//lib/rbs/collection/sources.rb#12
+ def from_config_entry(source_entry, base_directory:); end
+ end
+end
+
+# source://rbs//lib/rbs/collection/sources/base.rb#6
+module RBS::Collection::Sources::Base
+ # source://rbs//lib/rbs/collection/sources/base.rb#7
+ def dependencies_of(name, version); end
+end
+
+# source://rbs//lib/rbs/collection/sources/git.rb#10
+class RBS::Collection::Sources::Git
+ include ::RBS::Collection::Sources::Base
+
+ # @return [Git] a new instance of Git
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#18
+ def initialize(name:, revision:, remote:, repo_dir:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#26
+ def has?(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#43
+ def install(dest:, name:, version:, stdout:); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#223
+ def load_metadata(dir:); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#73
+ def manifest_of(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#207
+ def metadata_content(name:, version:); end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#16
+ def name; end
+
+ # Returns the value of attribute remote.
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#16
+ def remote; end
+
+ # Returns the value of attribute repo_dir.
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#16
+ def repo_dir; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#172
+ def resolved_revision; end
+
+ # Returns the value of attribute revision.
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#16
+ def revision; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#113
+ def to_lockfile; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#36
+ def versions(name); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#215
+ def write_metadata(dir:, name:, version:); end
+
+ private
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#87
+ def _install(dest:, name:, version:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#183
+ def commit_hash?; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#99
+ def cp_r(src, dest); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#123
+ def format_config_entry(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#168
+ def gem_repo_dir; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#229
+ def gems_versions; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#187
+ def git(*cmd, **opt); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#191
+ def git?(*cmd, **opt); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#158
+ def git_dir; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/git.rb#152
+ def need_to_fetch?(revision); end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#130
+ def setup!; end
+
+ # source://rbs//lib/rbs/collection/sources/git.rb#197
+ def sh!(*cmd, **opt); end
+end
+
+# source://rbs//lib/rbs/collection/sources/git.rb#14
+class RBS::Collection::Sources::Git::CommandError < ::StandardError; end
+
+# source://rbs//lib/rbs/collection/sources/git.rb#12
+RBS::Collection::Sources::Git::METADATA_FILENAME = T.let(T.unsafe(nil), String)
+
+# source://rbs//lib/rbs/collection/sources/local.rb#6
+class RBS::Collection::Sources::Local
+ include ::RBS::Collection::Sources::Base
+
+ # @return [Local] a new instance of Local
+ #
+ # source://rbs//lib/rbs/collection/sources/local.rb#11
+ def initialize(path:, base_directory:); end
+
+ # Returns the value of attribute full_path.
+ #
+ # source://rbs//lib/rbs/collection/sources/local.rb#9
+ def full_path; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/local.rb#17
+ def has?(name, version); end
+
+ # Create a symlink instead of copying file to refer files in @path.
+ # By avoiding copying RBS files, the users do not need re-run `rbs collection install`
+ # when the RBS files are updated.
+ #
+ # source://rbs//lib/rbs/collection/sources/local.rb#32
+ def install(dest:, name:, version:, stdout:); end
+
+ # source://rbs//lib/rbs/collection/sources/local.rb#64
+ def manifest_of(name, version); end
+
+ # Returns the value of attribute path.
+ #
+ # source://rbs//lib/rbs/collection/sources/local.rb#9
+ def path; end
+
+ # source://rbs//lib/rbs/collection/sources/local.rb#72
+ def to_lockfile; end
+
+ # source://rbs//lib/rbs/collection/sources/local.rb#25
+ def versions(name); end
+
+ private
+
+ # source://rbs//lib/rbs/collection/sources/local.rb#59
+ def _install(src, dst); end
+end
+
+# Signatures that are inclduded in gem package as sig/ directory.
+#
+# source://rbs//lib/rbs/collection/sources/rubygems.rb#9
+class RBS::Collection::Sources::Rubygems
+ include ::RBS::Collection::Sources::Base
+ include ::Singleton
+ extend ::Singleton::SingletonClassMethods
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/rubygems.rb#13
+ def has?(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/rubygems.rb#23
+ def install(dest:, name:, version:, stdout:); end
+
+ # source://rbs//lib/rbs/collection/sources/rubygems.rb#29
+ def manifest_of(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/rubygems.rb#36
+ def to_lockfile; end
+
+ # source://rbs//lib/rbs/collection/sources/rubygems.rb#17
+ def versions(name); end
+
+ private
+
+ # source://rbs//lib/rbs/collection/sources/rubygems.rb#42
+ def gem_sig_path(name, version); end
+
+ class << self
+ private
+
+ def allocate; end
+ def new(*_arg0); end
+ end
+end
+
+# signatures that are bundled in rbs gem under the stdlib/ directory
+#
+# source://rbs//lib/rbs/collection/sources/stdlib.rb#9
+class RBS::Collection::Sources::Stdlib
+ include ::RBS::Collection::Sources::Base
+ include ::Singleton
+ extend ::Singleton::SingletonClassMethods
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/collection/sources/stdlib.rb#15
+ def has?(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/stdlib.rb#23
+ def install(dest:, name:, version:, stdout:); end
+
+ # source://rbs//lib/rbs/collection/sources/stdlib.rb#29
+ def manifest_of(name, version); end
+
+ # source://rbs//lib/rbs/collection/sources/stdlib.rb#38
+ def to_lockfile; end
+
+ # source://rbs//lib/rbs/collection/sources/stdlib.rb#19
+ def versions(name); end
+
+ private
+
+ # source://rbs//lib/rbs/collection/sources/stdlib.rb#44
+ def lookup(name, version); end
+
+ class << self
+ private
+
+ def allocate; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/collection/sources/stdlib.rb#13
+RBS::Collection::Sources::Stdlib::REPO = T.let(T.unsafe(nil), RBS::Repository)
+
+# source://rbs//lib/rbs/constant.rb#4
+class RBS::Constant
+ # @return [Constant] a new instance of Constant
+ #
+ # source://rbs//lib/rbs/constant.rb#9
+ def initialize(name:, type:, entry:); end
+
+ # source://rbs//lib/rbs/constant.rb#15
+ def ==(other); end
+
+ # Returns the value of attribute entry.
+ #
+ # source://rbs//lib/rbs/constant.rb#7
+ def entry; end
+
+ # source://rbs//lib/rbs/constant.rb#15
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/constant.rb#24
+ def hash; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/constant.rb#5
+ def name; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/constant.rb#6
+ def type; end
+end
+
+# source://rbs//lib/rbs/errors.rb#531
+class RBS::CyclicClassAliasDefinitionError < ::RBS::BaseError
+ include ::RBS::DetailedMessageable
+
+ # @return [CyclicClassAliasDefinitionError] a new instance of CyclicClassAliasDefinitionError
+ #
+ # source://rbs//lib/rbs/errors.rb#536
+ def initialize(entry); end
+
+ # Returns the value of attribute alias_entry.
+ #
+ # source://rbs//lib/rbs/errors.rb#534
+ def alias_entry; end
+
+ # source://rbs//lib/rbs/errors.rb#542
+ def location; end
+end
+
+# source://rbs//lib/rbs/errors.rb#492
+class RBS::CyclicTypeParameterBound < ::RBS::BaseError
+ include ::RBS::DetailedMessageable
+
+ # @return [CyclicTypeParameterBound] a new instance of CyclicTypeParameterBound
+ #
+ # source://rbs//lib/rbs/errors.rb#497
+ def initialize(type_name:, method_name:, params:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#495
+ def location; end
+
+ # Returns the value of attribute method_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#495
+ def method_name; end
+
+ # Returns the value of attribute params.
+ #
+ # source://rbs//lib/rbs/errors.rb#495
+ def params; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#495
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/definition.rb#4
+class RBS::Definition
+ # @return [Definition] a new instance of Definition
+ #
+ # source://rbs//lib/rbs/definition.rb#287
+ def initialize(type_name:, entry:, self_type:, ancestors:); end
+
+ # Returns the value of attribute ancestors.
+ #
+ # source://rbs//lib/rbs/definition.rb#281
+ def ancestors; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#310
+ def class?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#327
+ def class_type?; end
+
+ # Returns the value of attribute class_variables.
+ #
+ # source://rbs//lib/rbs/definition.rb#285
+ def class_variables; end
+
+ # source://rbs//lib/rbs/definition.rb#372
+ def each_type(&block); end
+
+ # Returns the value of attribute entry.
+ #
+ # source://rbs//lib/rbs/definition.rb#280
+ def entry; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#331
+ def instance_type?; end
+
+ # Returns the value of attribute instance_variables.
+ #
+ # source://rbs//lib/rbs/definition.rb#284
+ def instance_variables; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#318
+ def interface?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#335
+ def interface_type?; end
+
+ # source://rbs//lib/rbs/definition.rb#362
+ def map_method_type(&block); end
+
+ # Returns the value of attribute methods.
+ #
+ # source://rbs//lib/rbs/definition.rb#283
+ def methods; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#314
+ def module?; end
+
+ # Returns the value of attribute self_type.
+ #
+ # source://rbs//lib/rbs/definition.rb#282
+ def self_type; end
+
+ # source://rbs//lib/rbs/definition.rb#352
+ def sub(s); end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/definition.rb#279
+ def type_name; end
+
+ # source://rbs//lib/rbs/definition.rb#339
+ def type_params; end
+
+ # source://rbs//lib/rbs/definition.rb#343
+ def type_params_decl; end
+end
+
+# source://rbs//lib/rbs/definition.rb#189
+module RBS::Definition::Ancestor; end
+
+# source://rbs//lib/rbs/definition.rb#190
+class RBS::Definition::Ancestor::Instance
+ # @return [Instance] a new instance of Instance
+ #
+ # source://rbs//lib/rbs/definition.rb#193
+ def initialize(name:, args:, source:); end
+
+ # source://rbs//lib/rbs/definition.rb#199
+ def ==(other); end
+
+ # Returns the value of attribute args.
+ #
+ # source://rbs//lib/rbs/definition.rb#191
+ def args; end
+
+ # source://rbs//lib/rbs/definition.rb#199
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/definition.rb#205
+ def hash; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/definition.rb#191
+ def name; end
+
+ # Returns the value of attribute source.
+ #
+ # source://rbs//lib/rbs/definition.rb#191
+ def source; end
+end
+
+# source://rbs//lib/rbs/definition.rb#210
+class RBS::Definition::Ancestor::Singleton
+ # @return [Singleton] a new instance of Singleton
+ #
+ # source://rbs//lib/rbs/definition.rb#213
+ def initialize(name:); end
+
+ # source://rbs//lib/rbs/definition.rb#217
+ def ==(other); end
+
+ # source://rbs//lib/rbs/definition.rb#217
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/definition.rb#223
+ def hash; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/definition.rb#211
+ def name; end
+end
+
+# source://rbs//lib/rbs/definition.rb#229
+class RBS::Definition::InstanceAncestors
+ # @return [InstanceAncestors] a new instance of InstanceAncestors
+ #
+ # source://rbs//lib/rbs/definition.rb#234
+ def initialize(type_name:, params:, ancestors:); end
+
+ # Returns the value of attribute ancestors.
+ #
+ # source://rbs//lib/rbs/definition.rb#232
+ def ancestors; end
+
+ # source://rbs//lib/rbs/definition.rb#240
+ def apply(args, location:); end
+
+ # Returns the value of attribute params.
+ #
+ # source://rbs//lib/rbs/definition.rb#231
+ def params; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/definition.rb#230
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/definition.rb#25
+class RBS::Definition::Method
+ # @return [Method] a new instance of Method
+ #
+ # source://rbs//lib/rbs/definition.rb#81
+ def initialize(super_method:, defs:, accessibility:, alias_of:, annotations: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/definition.rb#89
+ def ==(other); end
+
+ # Returns the value of attribute accessibility.
+ #
+ # source://rbs//lib/rbs/definition.rb#77
+ def accessibility; end
+
+ # Returns the value of attribute alias_of.
+ #
+ # source://rbs//lib/rbs/definition.rb#79
+ def alias_of; end
+
+ # source://rbs//lib/rbs/definition.rb#126
+ def annotations; end
+
+ # source://rbs//lib/rbs/definition.rb#122
+ def comments; end
+
+ # source://rbs//lib/rbs/definition.rb#104
+ def defined_in; end
+
+ # Returns the value of attribute defs.
+ #
+ # source://rbs//lib/rbs/definition.rb#76
+ def defs; end
+
+ # source://rbs//lib/rbs/definition.rb#89
+ def eql?(other); end
+
+ # Returns the value of attribute extra_annotations.
+ #
+ # source://rbs//lib/rbs/definition.rb#78
+ def extra_annotations; end
+
+ # source://rbs//lib/rbs/definition.rb#100
+ def hash; end
+
+ # source://rbs//lib/rbs/definition.rb#111
+ def implemented_in; end
+
+ # source://rbs//lib/rbs/definition.rb#169
+ def map_method_type(&block); end
+
+ # source://rbs//lib/rbs/definition.rb#151
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/definition.rb#160
+ def map_type_bound(&block); end
+
+ # source://rbs//lib/rbs/definition.rb#130
+ def members; end
+
+ # source://rbs//lib/rbs/definition.rb#118
+ def method_types; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#138
+ def private?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#134
+ def public?; end
+
+ # source://rbs//lib/rbs/definition.rb#142
+ def sub(s); end
+
+ # Returns the value of attribute super_method.
+ #
+ # source://rbs//lib/rbs/definition.rb#75
+ def super_method; end
+
+ # source://rbs//lib/rbs/definition.rb#178
+ def update(super_method: T.unsafe(nil), defs: T.unsafe(nil), accessibility: T.unsafe(nil), alias_of: T.unsafe(nil), annotations: T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/definition.rb#26
+class RBS::Definition::Method::TypeDef
+ # @return [TypeDef] a new instance of TypeDef
+ #
+ # source://rbs//lib/rbs/definition.rb#32
+ def initialize(type:, member:, defined_in:, implemented_in:); end
+
+ # source://rbs//lib/rbs/definition.rb#39
+ def ==(other); end
+
+ # source://rbs//lib/rbs/definition.rb#57
+ def annotations; end
+
+ # source://rbs//lib/rbs/definition.rb#53
+ def comment; end
+
+ # Returns the value of attribute defined_in.
+ #
+ # source://rbs//lib/rbs/definition.rb#29
+ def defined_in; end
+
+ # source://rbs//lib/rbs/definition.rb#39
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/definition.rb#49
+ def hash; end
+
+ # Returns the value of attribute implemented_in.
+ #
+ # source://rbs//lib/rbs/definition.rb#30
+ def implemented_in; end
+
+ # Returns the value of attribute member.
+ #
+ # source://rbs//lib/rbs/definition.rb#28
+ def member; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/definition.rb#65
+ def overload?; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/definition.rb#27
+ def type; end
+
+ # source://rbs//lib/rbs/definition.rb#61
+ def update(type: T.unsafe(nil), member: T.unsafe(nil), defined_in: T.unsafe(nil), implemented_in: T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/definition.rb#269
+class RBS::Definition::SingletonAncestors
+ # @return [SingletonAncestors] a new instance of SingletonAncestors
+ #
+ # source://rbs//lib/rbs/definition.rb#273
+ def initialize(type_name:, ancestors:); end
+
+ # Returns the value of attribute ancestors.
+ #
+ # source://rbs//lib/rbs/definition.rb#271
+ def ancestors; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/definition.rb#270
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/definition.rb#5
+class RBS::Definition::Variable
+ # @return [Variable] a new instance of Variable
+ #
+ # source://rbs//lib/rbs/definition.rb#10
+ def initialize(parent_variable:, type:, declared_in:); end
+
+ # Returns the value of attribute declared_in.
+ #
+ # source://rbs//lib/rbs/definition.rb#8
+ def declared_in; end
+
+ # Returns the value of attribute parent_variable.
+ #
+ # source://rbs//lib/rbs/definition.rb#6
+ def parent_variable; end
+
+ # source://rbs//lib/rbs/definition.rb#16
+ def sub(s); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/definition.rb#7
+ def type; end
+end
+
+# source://rbs//lib/rbs/definition_builder.rb#4
+class RBS::DefinitionBuilder
+ # @return [DefinitionBuilder] a new instance of DefinitionBuilder
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#14
+ def initialize(env:, ancestor_builder: T.unsafe(nil), method_builder: T.unsafe(nil)); end
+
+ # Returns the value of attribute ancestor_builder.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#6
+ def ancestor_builder; end
+
+ # source://rbs//lib/rbs/definition_builder.rb#155
+ def build_instance(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#43
+ def build_interface(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#288
+ def build_singleton(type_name); end
+
+ # Builds a definition for singleton without .new method.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#217
+ def build_singleton0(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#85
+ def define_instance(definition, type_name, subst); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#33
+ def define_interface(definition, type_name, subst); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#590
+ def define_method(methods, definition, method, subst, defined_in:, implemented_in: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#25
+ def ensure_namespace!(namespace, location:); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#5
+ def env; end
+
+ # source://rbs//lib/rbs/definition_builder.rb#751
+ def expand_alias(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#755
+ def expand_alias1(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#762
+ def expand_alias2(type_name, args); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#532
+ def import_methods(definition, module_name, module_methods, interfaces_methods, subst); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#524
+ def insert_variable(type_name, variables, name:, type:); end
+
+ # Returns the value of attribute instance_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#9
+ def instance_cache; end
+
+ # Returns the value of attribute interface_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#12
+ def interface_cache; end
+
+ # source://rbs//lib/rbs/definition_builder.rb#398
+ def interface_methods(interface_ancestors); end
+
+ # Returns the value of attribute method_builder.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#7
+ def method_builder; end
+
+ # Returns the value of attribute singleton0_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#11
+ def singleton0_cache; end
+
+ # Returns the value of attribute singleton_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#10
+ def singleton_cache; end
+
+ # source://rbs//lib/rbs/definition_builder.rb#428
+ def source_location(source, decl); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#66
+ def tapp_subst(name, args); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#747
+ def try_cache(type_name, cache:); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#786
+ def update(env:, except:, ancestor_builder:); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#418
+ def validate_params_with(type_params, result:); end
+
+ # @raise [NoTypeFoundError]
+ #
+ # source://rbs//lib/rbs/definition_builder.rb#815
+ def validate_type_name(name, location); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#442
+ def validate_type_params(definition, ancestors:, methods:); end
+
+ # source://rbs//lib/rbs/definition_builder.rb#804
+ def validate_type_presence(type); end
+end
+
+# source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#5
+class RBS::DefinitionBuilder::AncestorBuilder
+ # @return [AncestorBuilder] a new instance of AncestorBuilder
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#162
+ def initialize(env:); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#151
+ def env; end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#564
+ def fill_ancestor_source(ancestor, name:, source:, &block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#408
+ def instance_ancestors(type_name, building_ancestors: T.unsafe(nil)); end
+
+ # Returns the value of attribute instance_ancestors_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#154
+ def instance_ancestors_cache; end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#531
+ def interface_ancestors(type_name, building_ancestors: T.unsafe(nil)); end
+
+ # Returns the value of attribute interface_ancestors_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#160
+ def interface_ancestors_cache; end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#388
+ def mixin_ancestors(entry, type_name, included_modules:, included_interfaces:, extended_modules:, prepended_modules:, extended_interfaces:); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#337
+ def mixin_ancestors0(decl, type_name, align_params:, included_modules:, included_interfaces:, extended_modules:, prepended_modules:, extended_interfaces:); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#192
+ def one_instance_ancestors(type_name); end
+
+ # Returns the value of attribute one_instance_ancestors_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#153
+ def one_instance_ancestors_cache; end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#318
+ def one_interface_ancestors(type_name); end
+
+ # Returns the value of attribute one_interface_ancestors_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#159
+ def one_interface_ancestors_cache; end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#264
+ def one_singleton_ancestors(type_name); end
+
+ # Returns the value of attribute one_singleton_ancestors_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#156
+ def one_singleton_ancestors_cache; end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#481
+ def singleton_ancestors(type_name, building_ancestors: T.unsafe(nil)); end
+
+ # Returns the value of attribute singleton_ancestors_cache.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#157
+ def singleton_ancestors_cache; end
+
+ # @raise [SuperclassMismatchError]
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#175
+ def validate_super_class!(type_name, entry); end
+end
+
+# source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#6
+class RBS::DefinitionBuilder::AncestorBuilder::OneAncestors
+ # @return [OneAncestors] a new instance of OneAncestors
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#17
+ def initialize(type_name:, params:, super_class:, self_types:, included_modules:, included_interfaces:, prepended_modules:, extended_modules:, extended_interfaces:); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#29
+ def each_ancestor(&block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#86
+ def each_extended_interface(&block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#78
+ def each_extended_module(&block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#62
+ def each_included_interface(&block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#54
+ def each_included_module(&block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#70
+ def each_prepended_module(&block); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#46
+ def each_self_type(&block); end
+
+ # Returns the value of attribute extended_interfaces.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#15
+ def extended_interfaces; end
+
+ # Returns the value of attribute extended_modules.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#14
+ def extended_modules; end
+
+ # Returns the value of attribute included_interfaces.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#12
+ def included_interfaces; end
+
+ # Returns the value of attribute included_modules.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#11
+ def included_modules; end
+
+ # Returns the value of attribute params.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#8
+ def params; end
+
+ # Returns the value of attribute prepended_modules.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#13
+ def prepended_modules; end
+
+ # Returns the value of attribute self_types.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#10
+ def self_types; end
+
+ # Returns the value of attribute super_class.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#9
+ def super_class; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#7
+ def type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#94
+ def class_instance(type_name:, params:, super_class:); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#136
+ def interface(type_name:, params:); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#122
+ def module_instance(type_name:, params:); end
+
+ # source://rbs//lib/rbs/definition_builder/ancestor_builder.rb#108
+ def singleton(type_name:, super_class:); end
+ end
+end
+
+# source://rbs//lib/rbs/definition_builder/method_builder.rb#5
+class RBS::DefinitionBuilder::MethodBuilder
+ # @return [MethodBuilder] a new instance of MethodBuilder
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#91
+ def initialize(env:); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#194
+ def build_alias(methods, type, member:); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#199
+ def build_attribute(methods, type, member:, accessibility:); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#99
+ def build_instance(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#174
+ def build_interface(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#215
+ def build_method(methods, type, member:, accessibility:); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#145
+ def build_singleton(type_name); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#226
+ def each_member_with_accessibility(members, accessibility: T.unsafe(nil)); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#86
+ def env; end
+
+ # Returns the value of attribute instance_methods.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#87
+ def instance_methods; end
+
+ # Returns the value of attribute interface_methods.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#89
+ def interface_methods; end
+
+ # Returns the value of attribute singleton_methods.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#88
+ def singleton_methods; end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#239
+ def update(env:, except:); end
+end
+
+# source://rbs//lib/rbs/definition_builder/method_builder.rb#6
+class RBS::DefinitionBuilder::MethodBuilder::Methods
+ # @return [Methods] a new instance of Methods
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#30
+ def initialize(type:); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#49
+ def each; end
+
+ # Returns the value of attribute methods.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#28
+ def methods; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#27
+ def type; end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#35
+ def validate!; end
+end
+
+# source://rbs//lib/rbs/definition_builder/method_builder.rb#7
+class RBS::DefinitionBuilder::MethodBuilder::Methods::Definition < ::Struct
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#14
+ def accessibility; end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#10
+ def original; end
+
+ class << self
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#22
+ def empty(name:, type:); end
+ end
+end
+
+# source://rbs//lib/rbs/definition_builder/method_builder.rb#63
+class RBS::DefinitionBuilder::MethodBuilder::Methods::Sorter
+ include ::TSort
+
+ # @return [Sorter] a new instance of Sorter
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#68
+ def initialize(methods); end
+
+ # Returns the value of attribute methods.
+ #
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#66
+ def methods; end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#76
+ def tsort_each_child(defn); end
+
+ # source://rbs//lib/rbs/definition_builder/method_builder.rb#72
+ def tsort_each_node(&block); end
+end
+
+# source://rbs//lib/rbs/errors.rb#21
+class RBS::DefinitionError < ::RBS::BaseError; end
+
+# source://rbs//lib/rbs/errors.rb#23
+module RBS::DetailedMessageable
+ # source://rbs//lib/rbs/errors.rb#24
+ def detailed_message(highlight: T.unsafe(nil), **_arg1); end
+end
+
+# source://rbs//lib/rbs/diff.rb#4
+class RBS::Diff
+ # @return [Diff] a new instance of Diff
+ #
+ # source://rbs//lib/rbs/diff.rb#5
+ def initialize(type_name:, library_options:, after_path: T.unsafe(nil), before_path: T.unsafe(nil), detail: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/diff.rb#13
+ def each_diff(&block); end
+
+ private
+
+ # source://rbs//lib/rbs/diff.rb#96
+ def build_builder(env); end
+
+ # source://rbs//lib/rbs/diff.rb#77
+ def build_env(path); end
+
+ # source://rbs//lib/rbs/diff.rb#49
+ def build_methods(path); end
+
+ # source://rbs//lib/rbs/diff.rb#116
+ def constant_to_s(constant); end
+
+ # source://rbs//lib/rbs/diff.rb#100
+ def definition_method_to_s(key, kind, definition_method); end
+
+ # source://rbs//lib/rbs/diff.rb#38
+ def each_diff_constants(before_constant_children, after_constant_children); end
+
+ # source://rbs//lib/rbs/diff.rb#27
+ def each_diff_methods(kind, before_methods, after_methods); end
+end
+
+# source://rbs//lib/rbs/errors.rb#372
+class RBS::DuplicatedDeclarationError < ::RBS::LoadingError
+ # @return [DuplicatedDeclarationError] a new instance of DuplicatedDeclarationError
+ #
+ # source://rbs//lib/rbs/errors.rb#376
+ def initialize(name, *decls); end
+
+ # Returns the value of attribute decls.
+ #
+ # source://rbs//lib/rbs/errors.rb#374
+ def decls; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/errors.rb#373
+ def name; end
+end
+
+# source://rbs//lib/rbs/errors.rb#270
+class RBS::DuplicatedInterfaceMethodDefinitionError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [DuplicatedInterfaceMethodDefinitionError] a new instance of DuplicatedInterfaceMethodDefinitionError
+ #
+ # source://rbs//lib/rbs/errors.rb#277
+ def initialize(type:, method_name:, member:); end
+
+ # source://rbs//lib/rbs/errors.rb#285
+ def location; end
+
+ # Returns the value of attribute member.
+ #
+ # source://rbs//lib/rbs/errors.rb#275
+ def member; end
+
+ # Returns the value of attribute method_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#274
+ def method_name; end
+
+ # source://rbs//lib/rbs/errors.rb#289
+ def qualified_method_name; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/errors.rb#273
+ def type; end
+
+ # source://rbs//lib/rbs/errors.rb#298
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/errors.rb#229
+class RBS::DuplicatedMethodDefinitionError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [DuplicatedMethodDefinitionError] a new instance of DuplicatedMethodDefinitionError
+ #
+ # source://rbs//lib/rbs/errors.rb#236
+ def initialize(type:, method_name:, members:); end
+
+ # source://rbs//lib/rbs/errors.rb#261
+ def location; end
+
+ # Returns the value of attribute members.
+ #
+ # source://rbs//lib/rbs/errors.rb#234
+ def members; end
+
+ # Returns the value of attribute method_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#233
+ def method_name; end
+
+ # source://rbs//lib/rbs/errors.rb#265
+ def other_locations; end
+
+ # source://rbs//lib/rbs/errors.rb#248
+ def qualified_method_name; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/errors.rb#232
+ def type; end
+
+ # source://rbs//lib/rbs/errors.rb#257
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/environment.rb#4
+class RBS::Environment
+ # @return [Environment] a new instance of Environment
+ #
+ # source://rbs//lib/rbs/environment.rb#145
+ def initialize; end
+
+ # source://rbs//lib/rbs/environment.rb#470
+ def <<(decl); end
+
+ # source://rbs//lib/rbs/environment.rb#792
+ def absolute_type(resolver, map, type, context:); end
+
+ # source://rbs//lib/rbs/environment.rb#787
+ def absolute_type_name(resolver, map, type_name, context:); end
+
+ # source://rbs//lib/rbs/environment.rb#476
+ def add_signature(buffer:, directives:, decls:); end
+
+ # source://rbs//lib/rbs/environment.rb#528
+ def append_context(context, decl); end
+
+ # source://rbs//lib/rbs/environment.rb#803
+ def buffers; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#218
+ def class_alias?(name); end
+
+ # Returns the value of attribute class_alias_decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#12
+ def class_alias_decls; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#202
+ def class_decl?(name); end
+
+ # Returns the value of attribute class_decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#7
+ def class_decls; end
+
+ # source://rbs//lib/rbs/environment.rb#226
+ def class_entry(type_name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#198
+ def constant_decl?(name); end
+
+ # Returns the value of attribute constant_decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#10
+ def constant_decls; end
+
+ # source://rbs//lib/rbs/environment.rb#274
+ def constant_entry(type_name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#194
+ def constant_name?(name); end
+
+ # Returns the value of attribute declarations.
+ #
+ # source://rbs//lib/rbs/environment.rb#5
+ def declarations; end
+
+ # Returns the value of attribute global_decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#11
+ def global_decls; end
+
+ # source://rbs//lib/rbs/environment.rb#373
+ def insert_decl(decl, outer:, namespace:); end
+
+ # source://rbs//lib/rbs/environment.rb#798
+ def inspect; end
+
+ # Returns the value of attribute interface_decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#8
+ def interface_decls; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#176
+ def interface_name?(name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#210
+ def module_alias?(name); end
+
+ # source://rbs//lib/rbs/environment.rb#266
+ def module_class_entry(type_name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#206
+ def module_decl?(name); end
+
+ # source://rbs//lib/rbs/environment.rb#235
+ def module_entry(type_name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#184
+ def module_name?(name); end
+
+ # source://rbs//lib/rbs/environment.rb#332
+ def normalize_module_name(name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#336
+ def normalize_module_name?(name); end
+
+ # source://rbs//lib/rbs/environment.rb#328
+ def normalize_type_name(name); end
+
+ # source://rbs//lib/rbs/environment.rb#297
+ def normalize_type_name!(name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#278
+ def normalize_type_name?(name); end
+
+ # source://rbs//lib/rbs/environment.rb#244
+ def normalized_class_entry(type_name); end
+
+ # source://rbs//lib/rbs/environment.rb#270
+ def normalized_module_class_entry(type_name); end
+
+ # source://rbs//lib/rbs/environment.rb#255
+ def normalized_module_entry(type_name); end
+
+ # source://rbs//lib/rbs/environment.rb#323
+ def normalized_type_name!(name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#310
+ def normalized_type_name?(type_name); end
+
+ # source://rbs//lib/rbs/environment.rb#537
+ def resolve_declaration(resolver, map, decl, outer:, prefix:); end
+
+ # source://rbs//lib/rbs/environment.rb#673
+ def resolve_member(resolver, map, member, context:); end
+
+ # source://rbs//lib/rbs/environment.rb#773
+ def resolve_method_type(resolver, map, type, context:); end
+
+ # source://rbs//lib/rbs/environment.rb#489
+ def resolve_type_names(only: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/environment.rb#781
+ def resolve_type_params(resolver, map, params, context:); end
+
+ # source://rbs//lib/rbs/environment.rb#522
+ def resolver_context(*nesting); end
+
+ # Returns the value of attribute signatures.
+ #
+ # source://rbs//lib/rbs/environment.rb#14
+ def signatures; end
+
+ # Returns the value of attribute type_alias_decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#9
+ def type_alias_decls; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#180
+ def type_alias_name?(name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#188
+ def type_name?(name); end
+
+ # source://rbs//lib/rbs/environment.rb#807
+ def unload(buffers); end
+
+ # source://rbs//lib/rbs/environment.rb#483
+ def validate_type_params; end
+
+ private
+
+ # source://rbs//lib/rbs/environment.rb#158
+ def initialize_copy(other); end
+
+ class << self
+ # source://rbs//lib/rbs/environment.rb#170
+ def from_loader(loader); end
+ end
+end
+
+# source://rbs//lib/rbs/environment.rb#130
+class RBS::Environment::ClassAliasEntry < ::RBS::Environment::SingleEntry; end
+
+# source://rbs//lib/rbs/environment.rb#100
+class RBS::Environment::ClassEntry < ::RBS::Environment::MultiEntry
+ # source://rbs//lib/rbs/environment.rb#101
+ def primary; end
+end
+
+# source://rbs//lib/rbs/environment.rb#139
+class RBS::Environment::ConstantEntry < ::RBS::Environment::SingleEntry; end
+
+# source://rbs//lib/rbs/environment.rb#16
+module RBS::Environment::ContextUtil
+ # source://rbs//lib/rbs/environment.rb#17
+ def calculate_context(decls); end
+end
+
+# source://rbs//lib/rbs/environment.rb#142
+class RBS::Environment::GlobalEntry < ::RBS::Environment::SingleEntry; end
+
+# source://rbs//lib/rbs/environment.rb#133
+class RBS::Environment::InterfaceEntry < ::RBS::Environment::SingleEntry; end
+
+# source://rbs//lib/rbs/environment.rb#127
+class RBS::Environment::ModuleAliasEntry < ::RBS::Environment::SingleEntry; end
+
+# source://rbs//lib/rbs/environment.rb#85
+class RBS::Environment::ModuleEntry < ::RBS::Environment::MultiEntry
+ # source://rbs//lib/rbs/environment.rb#92
+ def primary; end
+
+ # source://rbs//lib/rbs/environment.rb#86
+ def self_types; end
+end
+
+# source://rbs//lib/rbs/environment.rb#29
+class RBS::Environment::MultiEntry
+ # @return [MultiEntry] a new instance of MultiEntry
+ #
+ # source://rbs//lib/rbs/environment.rb#43
+ def initialize(name:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment.rb#70
+ def compatible_params?(ps1, ps2); end
+
+ # Returns the value of attribute decls.
+ #
+ # source://rbs//lib/rbs/environment.rb#41
+ def decls; end
+
+ # source://rbs//lib/rbs/environment.rb#48
+ def insert(decl:, outer:); end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/environment.rb#40
+ def name; end
+
+ # source://rbs//lib/rbs/environment.rb#80
+ def primary; end
+
+ # source://rbs//lib/rbs/environment.rb#76
+ def type_params; end
+
+ # source://rbs//lib/rbs/environment.rb#53
+ def validate_type_params; end
+end
+
+# source://rbs//lib/rbs/environment.rb#30
+class RBS::Environment::MultiEntry::D < ::Struct
+ include ::RBS::Environment::ContextUtil
+
+ # source://rbs//lib/rbs/environment.rb#35
+ def context; end
+
+ def decl; end
+ def decl=(_); end
+ def outer; end
+ def outer=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/environment.rb#109
+class RBS::Environment::SingleEntry
+ include ::RBS::Environment::ContextUtil
+
+ # @return [SingleEntry] a new instance of SingleEntry
+ #
+ # source://rbs//lib/rbs/environment.rb#114
+ def initialize(name:, decl:, outer:); end
+
+ # source://rbs//lib/rbs/environment.rb#122
+ def context; end
+
+ # Returns the value of attribute decl.
+ #
+ # source://rbs//lib/rbs/environment.rb#112
+ def decl; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/environment.rb#110
+ def name; end
+
+ # Returns the value of attribute outer.
+ #
+ # source://rbs//lib/rbs/environment.rb#111
+ def outer; end
+end
+
+# source://rbs//lib/rbs/environment.rb#136
+class RBS::Environment::TypeAliasEntry < ::RBS::Environment::SingleEntry; end
+
+# source://rbs//lib/rbs/environment/use_map.rb#5
+class RBS::Environment::UseMap
+ # @return [UseMap] a new instance of UseMap
+ #
+ # source://rbs//lib/rbs/environment/use_map.rb#30
+ def initialize(table:); end
+
+ # source://rbs//lib/rbs/environment/use_map.rb#36
+ def build_map(clause); end
+
+ # source://rbs//lib/rbs/environment/use_map.rb#72
+ def resolve(type_name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment/use_map.rb#53
+ def resolve?(type_name); end
+
+ # Returns the value of attribute use_dirs.
+ #
+ # source://rbs//lib/rbs/environment/use_map.rb#28
+ def use_dirs; end
+end
+
+# source://rbs//lib/rbs/environment/use_map.rb#6
+class RBS::Environment::UseMap::Table
+ # @return [Table] a new instance of Table
+ #
+ # source://rbs//lib/rbs/environment/use_map.rb#9
+ def initialize; end
+
+ # Returns the value of attribute children.
+ #
+ # source://rbs//lib/rbs/environment/use_map.rb#7
+ def children; end
+
+ # source://rbs//lib/rbs/environment/use_map.rb#14
+ def compute_children; end
+
+ # Returns the value of attribute known_types.
+ #
+ # source://rbs//lib/rbs/environment/use_map.rb#7
+ def known_types; end
+end
+
+# source://rbs//lib/rbs/environment_loader.rb#4
+class RBS::EnvironmentLoader
+ include ::RBS::FileFinder
+
+ # @return [EnvironmentLoader] a new instance of EnvironmentLoader
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#40
+ def initialize(core_root: T.unsafe(nil), repository: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/environment_loader.rb#48
+ def add(path: T.unsafe(nil), library: T.unsafe(nil), version: T.unsafe(nil), resolve_dependencies: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/environment_loader.rb#80
+ def add_collection(lockfile); end
+
+ # Returns the value of attribute core_root.
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#20
+ def core_root; end
+
+ # Returns the value of attribute dirs.
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#24
+ def dirs; end
+
+ # source://rbs//lib/rbs/environment_loader.rb#126
+ def each_dir; end
+
+ # source://rbs//lib/rbs/environment_loader.rb#149
+ def each_signature; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#104
+ def has_library?(library:, version:); end
+
+ # Returns the value of attribute libs.
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#23
+ def libs; end
+
+ # source://rbs//lib/rbs/environment_loader.rb#112
+ def load(env:); end
+
+ # Returns the value of attribute repository.
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#21
+ def repository; end
+
+ # source://rbs//lib/rbs/environment_loader.rb#65
+ def resolve_dependencies(library:, version:); end
+
+ class << self
+ # source://rbs//lib/rbs/environment_loader.rb#28
+ def gem_sig_path(name, version); end
+ end
+end
+
+# source://rbs//lib/rbs/environment_loader.rb#26
+RBS::EnvironmentLoader::DEFAULT_CORE_ROOT = T.let(T.unsafe(nil), Pathname)
+
+# source://rbs//lib/rbs/environment_loader.rb#17
+class RBS::EnvironmentLoader::Library < ::Struct; end
+
+# source://rbs//lib/rbs/environment_loader.rb#5
+class RBS::EnvironmentLoader::UnknownLibraryError < ::StandardError
+ # @return [UnknownLibraryError] a new instance of UnknownLibraryError
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#8
+ def initialize(lib:); end
+
+ # Returns the value of attribute library.
+ #
+ # source://rbs//lib/rbs/environment_loader.rb#6
+ def library; end
+end
+
+# source://rbs//lib/rbs/environment_walker.rb#4
+class RBS::EnvironmentWalker
+ include ::TSort
+
+ # @return [EnvironmentWalker] a new instance of EnvironmentWalker
+ #
+ # source://rbs//lib/rbs/environment_walker.rb#11
+ def initialize(env:); end
+
+ # source://rbs//lib/rbs/environment_walker.rb#16
+ def builder; end
+
+ # source://rbs//lib/rbs/environment_walker.rb#99
+ def each_type_name(type, &block); end
+
+ # source://rbs//lib/rbs/environment_walker.rb#105
+ def each_type_node(type, &block); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/environment_walker.rb#9
+ def env; end
+
+ # source://rbs//lib/rbs/environment_walker.rb#20
+ def only_ancestors!(only = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/environment_walker.rb#25
+ def only_ancestors?; end
+
+ # source://rbs//lib/rbs/environment_walker.rb#44
+ def tsort_each_child(node, &block); end
+
+ # source://rbs//lib/rbs/environment_walker.rb#31
+ def tsort_each_node(&block); end
+end
+
+# source://rbs//lib/rbs/environment_walker.rb#5
+class RBS::EnvironmentWalker::InstanceNode < ::Struct
+ def type_name; end
+ def type_name=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/environment_walker.rb#6
+class RBS::EnvironmentWalker::SingletonNode < ::Struct
+ def type_name; end
+ def type_name=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/environment_walker.rb#7
+class RBS::EnvironmentWalker::TypeNameNode < ::Struct
+ def type_name; end
+ def type_name=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/factory.rb#4
+class RBS::Factory
+ # source://rbs//lib/rbs/factory.rb#5
+ def type_name(string); end
+end
+
+# source://rbs//lib/rbs/file_finder.rb#4
+module RBS::FileFinder
+ class << self
+ # source://rbs//lib/rbs/file_finder.rb#7
+ def each_file(path, immediate:, skip_hidden:, &block); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#361
+class RBS::GenericParameterMismatchError < ::RBS::LoadingError
+ # @return [GenericParameterMismatchError] a new instance of GenericParameterMismatchError
+ #
+ # source://rbs//lib/rbs/errors.rb#365
+ def initialize(name:, decl:); end
+
+ # Returns the value of attribute decl.
+ #
+ # source://rbs//lib/rbs/errors.rb#363
+ def decl; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/errors.rb#362
+ def name; end
+end
+
+# source://rbs//lib/rbs/errors.rb#507
+class RBS::InconsistentClassModuleAliasError < ::RBS::BaseError
+ include ::RBS::DetailedMessageable
+
+ # @return [InconsistentClassModuleAliasError] a new instance of InconsistentClassModuleAliasError
+ #
+ # source://rbs//lib/rbs/errors.rb#512
+ def initialize(entry); end
+
+ # Returns the value of attribute alias_entry.
+ #
+ # source://rbs//lib/rbs/errors.rb#510
+ def alias_entry; end
+
+ # source://rbs//lib/rbs/errors.rb#526
+ def location; end
+end
+
+# source://rbs//lib/rbs/errors.rb#165
+class RBS::InheritModuleError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [InheritModuleError] a new instance of InheritModuleError
+ #
+ # source://rbs//lib/rbs/errors.rb#170
+ def initialize(super_decl); end
+
+ # source://rbs//lib/rbs/errors.rb#176
+ def location; end
+
+ # Returns the value of attribute super_decl.
+ #
+ # source://rbs//lib/rbs/errors.rb#168
+ def super_decl; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#180
+ def check!(super_decl, env:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#332
+class RBS::InvalidOverloadMethodError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [InvalidOverloadMethodError] a new instance of InvalidOverloadMethodError
+ #
+ # source://rbs//lib/rbs/errors.rb#340
+ def initialize(type_name:, method_name:, kind:, members:); end
+
+ # Returns the value of attribute kind.
+ #
+ # source://rbs//lib/rbs/errors.rb#337
+ def kind; end
+
+ # source://rbs//lib/rbs/errors.rb#356
+ def location; end
+
+ # Returns the value of attribute members.
+ #
+ # source://rbs//lib/rbs/errors.rb#338
+ def members; end
+
+ # Returns the value of attribute method_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#336
+ def method_name; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#335
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/errors.rb#67
+class RBS::InvalidTypeApplicationError < ::RBS::DefinitionError
+ # @return [InvalidTypeApplicationError] a new instance of InvalidTypeApplicationError
+ #
+ # source://rbs//lib/rbs/errors.rb#73
+ def initialize(type_name:, args:, params:, location:); end
+
+ # Returns the value of attribute args.
+ #
+ # source://rbs//lib/rbs/errors.rb#69
+ def args; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#71
+ def location; end
+
+ # Returns the value of attribute params.
+ #
+ # source://rbs//lib/rbs/errors.rb#70
+ def params; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#68
+ def type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#81
+ def check!(type_name:, args:, params:, location:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#385
+class RBS::InvalidVarianceAnnotationError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [InvalidVarianceAnnotationError] a new instance of InvalidVarianceAnnotationError
+ #
+ # source://rbs//lib/rbs/errors.rb#392
+ def initialize(type_name:, param:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#390
+ def location; end
+
+ # Returns the value of attribute param.
+ #
+ # source://rbs//lib/rbs/errors.rb#389
+ def param; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#388
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/errors.rb#20
+class RBS::LoadingError < ::RBS::BaseError; end
+
+# source://rbs//lib/rbs/location_aux.rb#4
+class RBS::Location
+ def initialize(_arg0, _arg1, _arg2); end
+
+ # source://rbs//lib/rbs/location_aux.rb#75
+ def ==(other); end
+
+ def [](_arg0); end
+ def _add_optional_child(_arg0, _arg1, _arg2); end
+ def _add_optional_no_child(_arg0); end
+ def _add_required_child(_arg0, _arg1, _arg2); end
+ def _optional_keys; end
+ def _required_keys; end
+
+ # source://rbs//lib/rbs/location_aux.rb#106
+ def add_optional_child(name, range); end
+
+ # source://rbs//lib/rbs/location_aux.rb#102
+ def add_required_child(name, range); end
+
+ def aref(_arg0); end
+ def buffer; end
+
+ # source://rbs//lib/rbs/location_aux.rb#114
+ def each_optional_key(&block); end
+
+ # source://rbs//lib/rbs/location_aux.rb#122
+ def each_required_key(&block); end
+
+ # source://rbs//lib/rbs/location_aux.rb#47
+ def end_column; end
+
+ # source://rbs//lib/rbs/location_aux.rb#43
+ def end_line; end
+
+ # source://rbs//lib/rbs/location_aux.rb#57
+ def end_loc; end
+
+ def end_pos; end
+
+ # source://rbs//lib/rbs/location_aux.rb#5
+ def inspect; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/location_aux.rb#130
+ def key?(name); end
+
+ # source://rbs//lib/rbs/location_aux.rb#31
+ def name; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/location_aux.rb#134
+ def optional_key?(name); end
+
+ # source://rbs//lib/rbs/location_aux.rb#63
+ def range; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/location_aux.rb#138
+ def required_key?(name); end
+
+ # source://rbs//lib/rbs/location_aux.rb#67
+ def source; end
+
+ # source://rbs//lib/rbs/location_aux.rb#39
+ def start_column; end
+
+ # source://rbs//lib/rbs/location_aux.rb#35
+ def start_line; end
+
+ # source://rbs//lib/rbs/location_aux.rb#51
+ def start_loc; end
+
+ def start_pos; end
+
+ # source://rbs//lib/rbs/location_aux.rb#82
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/location_aux.rb#71
+ def to_s; end
+
+ private
+
+ def _end_loc; end
+ def _start_loc; end
+ def initialize_copy(_arg0); end
+
+ class << self
+ # source://rbs//lib/rbs/location_aux.rb#16
+ def new(buffer_ = T.unsafe(nil), start_pos_ = T.unsafe(nil), end_pos_ = T.unsafe(nil), buffer: T.unsafe(nil), start_pos: T.unsafe(nil), end_pos: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/location_aux.rb#98
+ def to_string(location, default: T.unsafe(nil)); end
+ end
+end
+
+# source://rbs//lib/rbs/location_aux.rb#29
+RBS::Location::WithChildren = RBS::Location
+
+# source://rbs//lib/rbs/locator.rb#4
+class RBS::Locator
+ # @return [Locator] a new instance of Locator
+ #
+ # source://rbs//lib/rbs/locator.rb#7
+ def initialize(buffer:, dirs:, decls:); end
+
+ # Returns the value of attribute buffer.
+ #
+ # source://rbs//lib/rbs/locator.rb#5
+ def buffer; end
+
+ # Returns the value of attribute decls.
+ #
+ # source://rbs//lib/rbs/locator.rb#5
+ def decls; end
+
+ # Returns the value of attribute dirs.
+ #
+ # source://rbs//lib/rbs/locator.rb#5
+ def dirs; end
+
+ # source://rbs//lib/rbs/locator.rb#13
+ def find(line:, column:); end
+
+ # source://rbs//lib/rbs/locator.rb#29
+ def find2(line:, column:); end
+
+ # source://rbs//lib/rbs/locator.rb#58
+ def find_in_decl(pos, decl:, array:); end
+
+ # source://rbs//lib/rbs/locator.rb#42
+ def find_in_directive(pos, dir, array); end
+
+ # source://rbs//lib/rbs/locator.rb#203
+ def find_in_loc(pos, location:, array:); end
+
+ # source://rbs//lib/rbs/locator.rb#129
+ def find_in_member(pos, member:, array:); end
+
+ # source://rbs//lib/rbs/locator.rb#152
+ def find_in_method_type(pos, method_type:, array:); end
+
+ # source://rbs//lib/rbs/locator.rb#187
+ def find_in_type(pos, type:, array:); end
+
+ # source://rbs//lib/rbs/locator.rb#170
+ def find_in_type_param(pos, type_param:, array:); end
+
+ # source://rbs//lib/rbs/locator.rb#230
+ def test_loc(pos, location:); end
+end
+
+# source://rbs//lib/rbs/errors.rb#4
+module RBS::MethodNameHelper
+ # source://rbs//lib/rbs/errors.rb#5
+ def method_name_string; end
+end
+
+# source://rbs//lib/rbs/method_type.rb#4
+class RBS::MethodType
+ # @return [MethodType] a new instance of MethodType
+ #
+ # source://rbs//lib/rbs/method_type.rb#10
+ def initialize(type_params:, type:, block:, location:); end
+
+ # source://rbs//lib/rbs/method_type.rb#17
+ def ==(other); end
+
+ # Returns the value of attribute block.
+ #
+ # source://rbs//lib/rbs/method_type.rb#7
+ def block; end
+
+ # source://rbs//lib/rbs/method_type.rb#84
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/method_type.rb#57
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/method_type.rb#125
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/method_type.rb#121
+ def has_self_type?; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/method_type.rb#8
+ def location; end
+
+ # source://rbs//lib/rbs/method_type.rb#63
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/method_type.rb#72
+ def map_type_bound(&block); end
+
+ # source://rbs//lib/rbs/method_type.rb#33
+ def sub(s); end
+
+ # source://rbs//lib/rbs/method_type.rb#24
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/method_type.rb#98
+ def to_s; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/method_type.rb#6
+ def type; end
+
+ # source://rbs//lib/rbs/method_type.rb#117
+ def type_param_names; end
+
+ # Returns the value of attribute type_params.
+ #
+ # source://rbs//lib/rbs/method_type.rb#5
+ def type_params; end
+
+ # source://rbs//lib/rbs/method_type.rb#48
+ def update(type_params: T.unsafe(nil), type: T.unsafe(nil), block: T.unsafe(nil), location: T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/method_type.rb#129
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/errors.rb#421
+class RBS::MixinClassError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [MixinClassError] a new instance of MixinClassError
+ #
+ # source://rbs//lib/rbs/errors.rb#427
+ def initialize(type_name:, member:); end
+
+ # source://rbs//lib/rbs/errors.rb#434
+ def location; end
+
+ # Returns the value of attribute member.
+ #
+ # source://rbs//lib/rbs/errors.rb#425
+ def member; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#424
+ def type_name; end
+
+ private
+
+ # source://rbs//lib/rbs/errors.rb#446
+ def mixin_name; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#438
+ def check!(type_name:, env:, member:); end
+ end
+end
+
+# source://rbs//lib/rbs/namespace.rb#4
+class RBS::Namespace
+ # @return [Namespace] a new instance of Namespace
+ #
+ # source://rbs//lib/rbs/namespace.rb#7
+ def initialize(path:, absolute:); end
+
+ # source://rbs//lib/rbs/namespace.rb#20
+ def +(other); end
+
+ # source://rbs//lib/rbs/namespace.rb#59
+ def ==(other); end
+
+ # source://rbs//lib/rbs/namespace.rb#47
+ def absolute!; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/namespace.rb#39
+ def absolute?; end
+
+ # source://rbs//lib/rbs/namespace.rb#28
+ def append(component); end
+
+ # source://rbs//lib/rbs/namespace.rb#101
+ def ascend; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/namespace.rb#55
+ def empty?; end
+
+ # source://rbs//lib/rbs/namespace.rb#59
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/namespace.rb#65
+ def hash; end
+
+ # source://rbs//lib/rbs/namespace.rb#32
+ def parent; end
+
+ # Returns the value of attribute path.
+ #
+ # source://rbs//lib/rbs/namespace.rb#5
+ def path; end
+
+ # source://rbs//lib/rbs/namespace.rb#51
+ def relative!; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/namespace.rb#43
+ def relative?; end
+
+ # source://rbs//lib/rbs/namespace.rb#69
+ def split; end
+
+ # source://rbs//lib/rbs/namespace.rb#75
+ def to_s; end
+
+ # source://rbs//lib/rbs/namespace.rb#84
+ def to_type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/namespace.rb#12
+ def empty; end
+
+ # source://rbs//lib/rbs/namespace.rb#93
+ def parse(string); end
+
+ # source://rbs//lib/rbs/namespace.rb#16
+ def root; end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#207
+class RBS::NoMixinFoundError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [NoMixinFoundError] a new instance of NoMixinFoundError
+ #
+ # source://rbs//lib/rbs/errors.rb#213
+ def initialize(type_name:, member:); end
+
+ # source://rbs//lib/rbs/errors.rb#220
+ def location; end
+
+ # Returns the value of attribute member.
+ #
+ # source://rbs//lib/rbs/errors.rb#211
+ def member; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#210
+ def type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#224
+ def check!(type_name, env:, member:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#188
+class RBS::NoSelfTypeFoundError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [NoSelfTypeFoundError] a new instance of NoSelfTypeFoundError
+ #
+ # source://rbs//lib/rbs/errors.rb#194
+ def initialize(type_name:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#192
+ def location; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#191
+ def type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#201
+ def check!(self_type, env:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#145
+class RBS::NoSuperclassFoundError < ::RBS::DefinitionError
+ # @return [NoSuperclassFoundError] a new instance of NoSuperclassFoundError
+ #
+ # source://rbs//lib/rbs/errors.rb#149
+ def initialize(type_name:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#147
+ def location; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#146
+ def type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#156
+ def check!(type_name, env:, location:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#126
+class RBS::NoTypeFoundError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [NoTypeFoundError] a new instance of NoTypeFoundError
+ #
+ # source://rbs//lib/rbs/errors.rb#132
+ def initialize(type_name:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#130
+ def location; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#129
+ def type_name; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#139
+ def check!(type_name, env:, location:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#478
+class RBS::NonregularTypeAliasError < ::RBS::BaseError
+ include ::RBS::DetailedMessageable
+
+ # @return [NonregularTypeAliasError] a new instance of NonregularTypeAliasError
+ #
+ # source://rbs//lib/rbs/errors.rb#484
+ def initialize(diagnostic:, location:); end
+
+ # Returns the value of attribute diagnostic.
+ #
+ # source://rbs//lib/rbs/errors.rb#481
+ def diagnostic; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#482
+ def location; end
+end
+
+# source://rbs//lib/rbs/parser/lex_result.rb#4
+class RBS::Parser
+ class << self
+ def _lex(_arg0, _arg1); end
+ def _parse_method_type(_arg0, _arg1, _arg2, _arg3, _arg4); end
+ def _parse_signature(_arg0, _arg1); end
+ def _parse_type(_arg0, _arg1, _arg2, _arg3, _arg4); end
+
+ # source://rbs//lib/rbs/parser_aux.rb#34
+ def buffer(source); end
+
+ # source://rbs//lib/rbs/parser_aux.rb#25
+ def lex(source); end
+
+ # source://rbs//lib/rbs/parser_aux.rb#13
+ def parse_method_type(source, range: T.unsafe(nil), variables: T.unsafe(nil), require_eof: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/parser_aux.rb#18
+ def parse_signature(source); end
+
+ # source://rbs//lib/rbs/parser_aux.rb#8
+ def parse_type(source, range: T.unsafe(nil), variables: T.unsafe(nil), require_eof: T.unsafe(nil)); end
+ end
+end
+
+# source://rbs//lib/rbs/parser_aux.rb#43
+RBS::Parser::KEYWORDS = T.let(T.unsafe(nil), Hash)
+
+# source://rbs//lib/rbs/parser/lex_result.rb#5
+class RBS::Parser::LexResult
+ # @return [LexResult] a new instance of LexResult
+ #
+ # source://rbs//lib/rbs/parser/lex_result.rb#9
+ def initialize(buffer:, value:); end
+
+ # Returns the value of attribute buffer.
+ #
+ # source://rbs//lib/rbs/parser/lex_result.rb#6
+ def buffer; end
+
+ # Returns the value of attribute value.
+ #
+ # source://rbs//lib/rbs/parser/lex_result.rb#7
+ def value; end
+end
+
+# source://rbs//lib/rbs/parser/token.rb#5
+class RBS::Parser::Token
+ # @return [Token] a new instance of Token
+ #
+ # source://rbs//lib/rbs/parser/token.rb#9
+ def initialize(type:, location:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/parser/token.rb#18
+ def comment?; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/parser/token.rb#7
+ def location; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/parser/token.rb#6
+ def type; end
+
+ # source://rbs//lib/rbs/parser/token.rb#14
+ def value; end
+end
+
+# source://rbs//lib/rbs/errors.rb#51
+class RBS::ParsingError < ::RBS::BaseError
+ include ::RBS::DetailedMessageable
+
+ # @return [ParsingError] a new instance of ParsingError
+ #
+ # source://rbs//lib/rbs/errors.rb#58
+ def initialize(location, error_message, token_type); end
+
+ # Returns the value of attribute error_message.
+ #
+ # source://rbs//lib/rbs/errors.rb#55
+ def error_message; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#54
+ def location; end
+
+ # Returns the value of attribute token_type.
+ #
+ # source://rbs//lib/rbs/errors.rb#56
+ def token_type; end
+end
+
+# source://rbs//lib/rbs/prototype/helpers.rb#4
+module RBS::Prototype; end
+
+# source://rbs//lib/rbs/prototype/helpers.rb#5
+module RBS::Prototype::Helpers
+ private
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/helpers.rb#96
+ def any_node?(node, nodes: T.unsafe(nil), &block); end
+
+ # NOTE: args_node may be a nil by a bug
+ # https://bugs.ruby-lang.org/issues/17495
+ #
+ # source://rbs//lib/rbs/prototype/helpers.rb#120
+ def args_from_node(args_node); end
+
+ # source://rbs//lib/rbs/prototype/helpers.rb#8
+ def block_from_body(node); end
+
+ # source://rbs//lib/rbs/prototype/helpers.rb#84
+ def each_child(node, &block); end
+
+ # source://rbs//lib/rbs/prototype/helpers.rb#88
+ def each_node(nodes); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/helpers.rb#108
+ def keyword_hash?(node); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/helpers.rb#124
+ def symbol_literal_node?(node); end
+
+ # source://rbs//lib/rbs/prototype/helpers.rb#135
+ def untyped; end
+end
+
+# source://rbs//lib/rbs/prototype/node_usage.rb#5
+class RBS::Prototype::NodeUsage
+ include ::RBS::Prototype::Helpers
+
+ # @return [NodeUsage] a new instance of NodeUsage
+ #
+ # source://rbs//lib/rbs/prototype/node_usage.rb#10
+ def initialize(node); end
+
+ # source://rbs//lib/rbs/prototype/node_usage.rb#25
+ def calculate(node, conditional:); end
+
+ # Returns the value of attribute conditional_nodes.
+ #
+ # source://rbs//lib/rbs/prototype/node_usage.rb#8
+ def conditional_nodes; end
+
+ # source://rbs//lib/rbs/prototype/node_usage.rb#17
+ def each_conditional_node(&block); end
+end
+
+# source://rbs//lib/rbs/prototype/rb.rb#5
+class RBS::Prototype::RB
+ include ::RBS::Prototype::Helpers
+
+ # @return [RB] a new instance of RB
+ #
+ # source://rbs//lib/rbs/prototype/rb.rb#45
+ def initialize; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#556
+ def block_type(node); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#536
+ def body_type(node); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#451
+ def const_to_name(node, context:); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#432
+ def const_to_name!(node); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#764
+ def current_accessibility(decls, index = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#49
+ def decls; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#804
+ def find_def_index_by_name(decls, name); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#531
+ def function_return_type_from_body(node); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#473
+ def function_type_from_body(node, def_name); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#549
+ def if_unless_type(node); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/rb.rb#800
+ def is_accessibility?(decl); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#462
+ def literal_to_symbol(node); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#570
+ def literal_to_type(node); end
+
+ # backward compatible
+ #
+ # source://rbs//lib/rbs/prototype/rb.rb#711
+ def node_type(node, default: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#711
+ def param_type(node, default: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#75
+ def parse(string); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#756
+ def private; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#107
+ def process(node, decls:, comments:, context:); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#426
+ def process_children(node, decls:, comments:, context:); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#760
+ def public; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#691
+ def range_element_type(types); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#774
+ def remove_unnecessary_accessibility_methods!(decls); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#822
+ def sort_members!(decls); end
+
+ # Returns the value of attribute source_decls.
+ #
+ # source://rbs//lib/rbs/prototype/rb.rb#42
+ def source_decls; end
+
+ # Returns the value of attribute toplevel_members.
+ #
+ # source://rbs//lib/rbs/prototype/rb.rb#43
+ def toplevel_members; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#680
+ def types_to_union_type(types); end
+end
+
+# source://rbs//lib/rbs/prototype/rb.rb#8
+class RBS::Prototype::RB::Context < ::Struct
+ # source://rbs//lib/rbs/prototype/rb.rb#25
+ def attribute_kind; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#33
+ def enter_namespace(namespace); end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#15
+ def method_kind; end
+
+ # source://rbs//lib/rbs/prototype/rb.rb#37
+ def update(module_function: T.unsafe(nil), singleton: T.unsafe(nil), in_def: T.unsafe(nil)); end
+
+ class << self
+ # source://rbs//lib/rbs/prototype/rb.rb#11
+ def initial(namespace: T.unsafe(nil)); end
+ end
+end
+
+# source://rbs//lib/rbs/prototype/rbi.rb#5
+class RBS::Prototype::RBI
+ include ::RBS::Prototype::Helpers
+
+ # @return [RBI] a new instance of RBI
+ #
+ # source://rbs//lib/rbs/prototype/rbi.rb#12
+ def initialize; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/rbi.rb#556
+ def call_node?(node, name:, receiver: T.unsafe(nil), args: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#560
+ def const_to_name(node); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#92
+ def current_module; end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#96
+ def current_module!; end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#48
+ def current_namespace; end
+
+ # Returns the value of attribute decls.
+ #
+ # source://rbs//lib/rbs/prototype/rbi.rb#8
+ def decls; end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#596
+ def each_arg(array, &block); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#610
+ def each_child(node); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#114
+ def join_comments(nodes, comments); end
+
+ # Returns the value of attribute last_sig.
+ #
+ # source://rbs//lib/rbs/prototype/rbi.rb#10
+ def last_sig; end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#280
+ def method_type(args_node, type_node, variables:, overloads:); end
+
+ # Returns the value of attribute modules.
+ #
+ # source://rbs//lib/rbs/prototype/rbi.rb#9
+ def modules; end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#44
+ def nested_name(name); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#618
+ def node_to_hash(node); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#18
+ def parse(string); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#346
+ def parse_params(args_node, args, method_type, variables:, overloads:); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#108
+ def pop_sig; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/rbi.rb#548
+ def proc_type?(type_node); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#119
+ def process(node, comments:, outer: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#54
+ def push_class(name, super_class, comment:); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#73
+ def push_module(name, comment:); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#100
+ def push_sig(node); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#471
+ def type_of(type_node, variables:); end
+
+ # source://rbs//lib/rbs/prototype/rbi.rb#484
+ def type_of0(type_node, variables:); end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/helpers.rb#5
+class RBS::Prototype::Runtime
+ include ::RBS::Prototype::Helpers
+ include ::RBS::Prototype::Runtime::Helpers
+
+ # @return [Runtime] a new instance of Runtime
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#70
+ def initialize(patterns:, env:, merge:, todo: T.unsafe(nil), owners_included: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#652
+ def block_from_ast_of(method); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#100
+ def builder; end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#108
+ def decls; end
+
+ # Generate/find outer module declarations
+ # This is broken down into another method to comply with `DRY`
+ # This generates/finds declarations in nested form & returns the last array of declarations
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#581
+ def ensure_outer_module_declarations(mod); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#64
+ def env; end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#486
+ def generate_class(mod); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#424
+ def generate_constants(mod, decls); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#298
+ def generate_methods(mod, module_name, members); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#563
+ def generate_mixin(mod, decl, type_name, type_name_absolute); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#525
+ def generate_module(mod); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#471
+ def generate_super_class(mod); end
+
+ # Returns the value of attribute merge.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#65
+ def merge; end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#239
+ def merge_rbs(module_name, members, instance: T.unsafe(nil), singleton: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#170
+ def method_type(method); end
+
+ # Returns the value of attribute outline.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#68
+ def outline; end
+
+ # Sets the attribute outline
+ #
+ # @param value the value to set the attribute outline to.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#68
+ def outline=(_arg0); end
+
+ # Returns the value of attribute owners_included.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#67
+ def owners_included; end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#104
+ def parse(file); end
+
+ # Returns the value of attribute patterns.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#63
+ def patterns; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#83
+ def target?(const); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#285
+ def target_method?(mod, instance: T.unsafe(nil), singleton: T.unsafe(nil)); end
+
+ # Returns the value of attribute todo.
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#66
+ def todo; end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#96
+ def todo_object; end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#635
+ def type_args(type_name); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#643
+ def type_params(mod); end
+
+ private
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#414
+ def can_alias?(mod, method); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#128
+ def each_mixined_module(type_name, mod); end
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#137
+ def each_mixined_module_one(type_name, mod); end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#211
+class RBS::Prototype::Runtime::DataGenerator < ::RBS::Prototype::Runtime::ValueObjectBase
+ private
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#227
+ def add_decl_members(decl); end
+
+ # def self.new: (untyped foo, untyped bar) -> instance
+ # | (foo: untyped, bar: untyped) -> instance
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#235
+ def build_s_new; end
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#223
+ def build_super_class; end
+
+ class << self
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#212
+ def generatable?(target); end
+ end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/helpers.rb#6
+module RBS::Prototype::Runtime::Helpers
+ private
+
+ # source://rbs//lib/rbs/prototype/runtime/helpers.rb#19
+ def const_name(const); end
+
+ # source://rbs//lib/rbs/prototype/runtime/helpers.rb#15
+ def const_name!(const); end
+
+ # Returns the exact name & not compactly declared name
+ #
+ # source://rbs//lib/rbs/prototype/runtime/helpers.rb#10
+ def only_name(mod); end
+
+ # source://rbs//lib/rbs/prototype/runtime/helpers.rb#37
+ def to_type_name(name, full_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/runtime/helpers.rb#53
+ def untyped; end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/reflection.rb#6
+module RBS::Prototype::Runtime::Reflection
+ class << self
+ # source://rbs//lib/rbs/prototype/runtime/reflection.rb#12
+ def constants_of(mod, inherit = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/prototype/runtime/reflection.rb#7
+ def object_class(value); end
+ end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#89
+class RBS::Prototype::Runtime::StructGenerator < ::RBS::Prototype::Runtime::ValueObjectBase
+ private
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#106
+ def add_decl_members(decl); end
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#163
+ def build_overload_for_keyword_arguments; end
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#149
+ def build_overload_for_positional_arguments; end
+
+ # def self.keyword_init?: () -> bool?
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#178
+ def build_s_keyword_init_p; end
+
+ # def self.new: (?untyped foo, ?untyped bar) -> instance
+ # | (?foo: untyped, ?bar: untyped) -> instance
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#115
+ def build_s_new; end
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#102
+ def build_super_class; end
+
+ class << self
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#90
+ def generatable?(target); end
+ end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#100
+RBS::Prototype::Runtime::StructGenerator::CAN_CALL_KEYWORD_INIT_P = T.let(T.unsafe(nil), TrueClass)
+
+# source://rbs//lib/rbs/prototype/runtime.rb#10
+class RBS::Prototype::Runtime::Todo
+ # @return [Todo] a new instance of Todo
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#11
+ def initialize(builder:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#42
+ def skip_constant?(module_name:, name:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#33
+ def skip_instance_method?(module_name:, method:, accessibility:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#15
+ def skip_mixin?(type_name:, module_name:, mixin_class:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/prototype/runtime.rb#24
+ def skip_singleton_method?(module_name:, method:, accessibility:); end
+
+ private
+
+ # source://rbs//lib/rbs/prototype/runtime.rb#49
+ def mixin_decls(type_name); end
+end
+
+# source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#8
+class RBS::Prototype::Runtime::ValueObjectBase
+ include ::RBS::Prototype::Runtime::Helpers
+
+ # @return [ValueObjectBase] a new instance of ValueObjectBase
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#11
+ def initialize(target_class); end
+
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#15
+ def build_decl; end
+
+ private
+
+ # attr_accessor foo: untyped
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#74
+ def build_member_accessors(ast_members_class); end
+
+ # def self.members: () -> [ :foo, :bar ]
+ # def members: () -> [ :foo, :bar ]
+ #
+ # source://rbs//lib/rbs/prototype/runtime/value_object_generator.rb#35
+ def build_s_members; end
+end
+
+# source://rbs//lib/rdoc_plugin/parser.rb#6
+module RBS::RDocPlugin; end
+
+# source://rbs//lib/rdoc_plugin/parser.rb#7
+class RBS::RDocPlugin::Parser
+ # @return [Parser] a new instance of Parser
+ #
+ # source://rbs//lib/rdoc_plugin/parser.rb#11
+ def initialize(top_level, content); end
+
+ # Returns the value of attribute content.
+ #
+ # source://rbs//lib/rdoc_plugin/parser.rb#9
+ def content; end
+
+ # Sets the attribute content
+ #
+ # @param value the value to set the attribute content to.
+ #
+ # source://rbs//lib/rdoc_plugin/parser.rb#9
+ def content=(_arg0); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#94
+ def parse_attr_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#53
+ def parse_class_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#67
+ def parse_constant_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#125
+ def parse_extend_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#109
+ def parse_include_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#24
+ def parse_member(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#88
+ def parse_method_alias_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#73
+ def parse_method_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#60
+ def parse_module_decl(decl:, context:, outer_name: T.unsafe(nil)); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#16
+ def scan; end
+
+ # Returns the value of attribute top_level.
+ #
+ # source://rbs//lib/rdoc_plugin/parser.rb#9
+ def top_level; end
+
+ # Sets the attribute top_level
+ #
+ # @param value the value to set the attribute top_level to.
+ #
+ # source://rbs//lib/rdoc_plugin/parser.rb#9
+ def top_level=(_arg0); end
+
+ private
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#149
+ def comment_string(with_comment); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#143
+ def construct_comment(context:, comment:); end
+
+ # source://rbs//lib/rdoc_plugin/parser.rb#154
+ def fully_qualified_name(outer_name:, decl:); end
+end
+
+# source://rbs//lib/rbs/errors.rb#401
+class RBS::RecursiveAliasDefinitionError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [RecursiveAliasDefinitionError] a new instance of RecursiveAliasDefinitionError
+ #
+ # source://rbs//lib/rbs/errors.rb#407
+ def initialize(type:, defs:); end
+
+ # Returns the value of attribute defs.
+ #
+ # source://rbs//lib/rbs/errors.rb#405
+ def defs; end
+
+ # source://rbs//lib/rbs/errors.rb#414
+ def location; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/errors.rb#404
+ def type; end
+end
+
+# source://rbs//lib/rbs/errors.rb#88
+class RBS::RecursiveAncestorError < ::RBS::DefinitionError
+ # @return [RecursiveAncestorError] a new instance of RecursiveAncestorError
+ #
+ # source://rbs//lib/rbs/errors.rb#92
+ def initialize(ancestors:, location:); end
+
+ # Returns the value of attribute ancestors.
+ #
+ # source://rbs//lib/rbs/errors.rb#89
+ def ancestors; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#90
+ def location; end
+
+ class << self
+ # source://rbs//lib/rbs/errors.rb#112
+ def check!(self_ancestor, ancestors:, location:); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#460
+class RBS::RecursiveTypeAliasError < ::RBS::BaseError
+ include ::RBS::DetailedMessageable
+
+ # @return [RecursiveTypeAliasError] a new instance of RecursiveTypeAliasError
+ #
+ # source://rbs//lib/rbs/errors.rb#466
+ def initialize(alias_names:, location:); end
+
+ # Returns the value of attribute alias_names.
+ #
+ # source://rbs//lib/rbs/errors.rb#463
+ def alias_names; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#464
+ def location; end
+
+ # source://rbs//lib/rbs/errors.rb#473
+ def name; end
+end
+
+# source://rbs//lib/rbs/repository.rb#4
+class RBS::Repository
+ # @return [Repository] a new instance of Repository
+ #
+ # source://rbs//lib/rbs/repository.rb#74
+ def initialize(no_stdlib: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/repository.rb#98
+ def add(dir); end
+
+ # Returns the value of attribute dirs.
+ #
+ # source://rbs//lib/rbs/repository.rb#71
+ def dirs; end
+
+ # Returns the value of attribute gems.
+ #
+ # source://rbs//lib/rbs/repository.rb#72
+ def gems; end
+
+ # source://rbs//lib/rbs/repository.rb#108
+ def lookup(gem, version); end
+
+ # source://rbs//lib/rbs/repository.rb#113
+ def lookup_path(gem, version); end
+
+ class << self
+ # source://rbs//lib/rbs/repository.rb#83
+ def default; end
+
+ # source://rbs//lib/rbs/repository.rb#87
+ def find_best_version(version, candidates); end
+ end
+end
+
+# source://rbs//lib/rbs/repository.rb#5
+RBS::Repository::DEFAULT_STDLIB_ROOT = T.let(T.unsafe(nil), Pathname)
+
+# source://rbs//lib/rbs/repository.rb#7
+class RBS::Repository::GemRBS
+ # @return [GemRBS] a new instance of GemRBS
+ #
+ # source://rbs//lib/rbs/repository.rb#11
+ def initialize(name:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/repository.rb#64
+ def empty?; end
+
+ # source://rbs//lib/rbs/repository.rb#59
+ def find_best_version(version); end
+
+ # source://rbs//lib/rbs/repository.rb#54
+ def latest_version; end
+
+ # source://rbs//lib/rbs/repository.rb#22
+ def load!; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/repository.rb#8
+ def name; end
+
+ # source://rbs//lib/rbs/repository.rb#49
+ def oldest_version; end
+
+ # Returns the value of attribute paths.
+ #
+ # source://rbs//lib/rbs/repository.rb#9
+ def paths; end
+
+ # source://rbs//lib/rbs/repository.rb#45
+ def version_names; end
+
+ # source://rbs//lib/rbs/repository.rb#17
+ def versions; end
+end
+
+# source://rbs//lib/rbs/repository.rb#69
+class RBS::Repository::VersionPath < ::Struct
+ def gem; end
+ def gem=(_); end
+ def path; end
+ def path=(_); end
+ def version; end
+ def version=(_); end
+
+ class << self
+ def [](*_arg0); end
+ def inspect; end
+ def keyword_init?; end
+ def members; end
+ def new(*_arg0); end
+ end
+end
+
+# source://rbs//lib/rbs/resolver/constant_resolver.rb#4
+module RBS::Resolver; end
+
+# source://rbs//lib/rbs/resolver/constant_resolver.rb#5
+class RBS::Resolver::ConstantResolver
+ # @return [ConstantResolver] a new instance of ConstantResolver
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#88
+ def initialize(builder:); end
+
+ # Returns the value of attribute builder.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#85
+ def builder; end
+
+ # Returns the value of attribute child_constants_cache.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#86
+ def child_constants_cache; end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#112
+ def children(module_name); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#100
+ def constants(context); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#178
+ def constants_from_ancestors(module_name, constants:); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#163
+ def constants_from_context(context, constants:); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#201
+ def constants_itself(context, constants:); end
+
+ # Returns the value of attribute context_constants_cache.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#86
+ def context_constants_cache; end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#138
+ def load_child_constants(name); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#122
+ def load_context_constants(context); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#95
+ def resolve(name, context:); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#108
+ def resolve_child(module_name, name); end
+
+ # Returns the value of attribute table.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#85
+ def table; end
+end
+
+# source://rbs//lib/rbs/resolver/constant_resolver.rb#6
+class RBS::Resolver::ConstantResolver::Table
+ # @return [Table] a new instance of Table
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#10
+ def initialize(environment); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#63
+ def children(name); end
+
+ # Returns the value of attribute children_table.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#7
+ def children_table; end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#67
+ def constant(name); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#80
+ def constant_of_constant(name, entry); end
+
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#71
+ def constant_of_module(name, entry); end
+
+ # Returns the value of attribute constants_table.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#8
+ def constants_table; end
+
+ # Returns the value of attribute toplevel.
+ #
+ # source://rbs//lib/rbs/resolver/constant_resolver.rb#7
+ def toplevel; end
+end
+
+# source://rbs//lib/rbs/resolver/type_name_resolver.rb#5
+class RBS::Resolver::TypeNameResolver
+ # @return [TypeNameResolver] a new instance of TypeNameResolver
+ #
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#10
+ def initialize(env); end
+
+ # Returns the value of attribute all_names.
+ #
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#6
+ def all_names; end
+
+ # Returns the value of attribute cache.
+ #
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#7
+ def cache; end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#8
+ def env; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#84
+ def has_name?(full_name); end
+
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#51
+ def partition(type_name); end
+
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#28
+ def resolve(type_name, context:); end
+
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#69
+ def resolve_in(head, context); end
+
+ # source://rbs//lib/rbs/resolver/type_name_resolver.rb#21
+ def try_cache(query); end
+end
+
+# source://rbs//lib/rbs/substitution.rb#4
+class RBS::Substitution
+ # @return [Substitution] a new instance of Substitution
+ #
+ # source://rbs//lib/rbs/substitution.rb#12
+ def initialize; end
+
+ # source://rbs//lib/rbs/substitution.rb#66
+ def +(other); end
+
+ # source://rbs//lib/rbs/substitution.rb#37
+ def [](ty); end
+
+ # source://rbs//lib/rbs/substitution.rb#16
+ def add(from:, to:); end
+
+ # source://rbs//lib/rbs/substitution.rb#37
+ def apply(ty); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/substitution.rb#8
+ def empty?; end
+
+ # Returns the value of attribute instance_type.
+ #
+ # source://rbs//lib/rbs/substitution.rb#6
+ def instance_type; end
+
+ # Sets the attribute instance_type
+ #
+ # @param value the value to set the attribute instance_type to.
+ #
+ # source://rbs//lib/rbs/substitution.rb#6
+ def instance_type=(_arg0); end
+
+ # Returns the value of attribute mapping.
+ #
+ # source://rbs//lib/rbs/substitution.rb#5
+ def mapping; end
+
+ # source://rbs//lib/rbs/substitution.rb#55
+ def without(*vars); end
+
+ class << self
+ # source://rbs//lib/rbs/substitution.rb#20
+ def build(variables, types, instance_type: T.unsafe(nil), &block); end
+ end
+end
+
+# source://rbs//lib/rbs/subtractor.rb#4
+class RBS::Subtractor
+ # @return [Subtractor] a new instance of Subtractor
+ #
+ # source://rbs//lib/rbs/subtractor.rb#5
+ def initialize(minuend, subtrahend); end
+
+ # source://rbs//lib/rbs/subtractor.rb#10
+ def call(minuend = T.unsafe(nil), context: T.unsafe(nil)); end
+
+ private
+
+ # source://rbs//lib/rbs/subtractor.rb#177
+ def absolute_typename(name, context:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/subtractor.rb#160
+ def access_modifier?(decl); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/subtractor.rb#118
+ def cvar_exist?(owner, name); end
+
+ # source://rbs//lib/rbs/subtractor.rb#127
+ def each_member(owner, &block); end
+
+ # source://rbs//lib/rbs/subtractor.rb#48
+ def filter_members(decl, context:); end
+
+ # source://rbs//lib/rbs/subtractor.rb#148
+ def filter_redundunt_access_modifiers(decls); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/subtractor.rb#106
+ def ivar_exist?(owner, name, kind); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/subtractor.rb#60
+ def member_exist?(owner, member, context:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/subtractor.rb#89
+ def method_exist?(owner, method_name, kind); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/subtractor.rb#137
+ def mixin_exist?(owner, mixin, context:); end
+
+ # source://rbs//lib/rbs/subtractor.rb#186
+ def typename_candidates(name, context:); end
+
+ # source://rbs//lib/rbs/subtractor.rb#164
+ def update_decl(decl, members:); end
+end
+
+# source://rbs//lib/rbs/errors.rb#321
+class RBS::SuperclassMismatchError < ::RBS::DefinitionError
+ # @return [SuperclassMismatchError] a new instance of SuperclassMismatchError
+ #
+ # source://rbs//lib/rbs/errors.rb#325
+ def initialize(name:, entry:); end
+
+ # Returns the value of attribute entry.
+ #
+ # source://rbs//lib/rbs/errors.rb#323
+ def entry; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/errors.rb#322
+ def name; end
+end
+
+# source://rbs//lib/rbs/type_alias_dependency.rb#4
+class RBS::TypeAliasDependency
+ # @return [TypeAliasDependency] a new instance of TypeAliasDependency
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#14
+ def initialize(env:); end
+
+ # source://rbs//lib/rbs/type_alias_dependency.rb#27
+ def build_dependencies; end
+
+ # Check if an alias type definition is circular & prohibited
+ #
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#19
+ def circular_definition?(alias_name); end
+
+ # A hash which stores the transitive closure
+ # of the directed graph
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#12
+ def dependencies; end
+
+ # source://rbs//lib/rbs/type_alias_dependency.rb#57
+ def dependencies_of(name); end
+
+ # Direct dependencies corresponds to a directed graph
+ # with vertices as types and directions based on assignment of types
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#9
+ def direct_dependencies; end
+
+ # source://rbs//lib/rbs/type_alias_dependency.rb#52
+ def direct_dependencies_of(name); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#5
+ def env; end
+
+ # source://rbs//lib/rbs/type_alias_dependency.rb#43
+ def transitive_closure; end
+
+ private
+
+ # Recursive function to construct transitive closure
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#81
+ def dependency(start, vertex, nested = T.unsafe(nil)); end
+
+ # Constructs directed graph recursively
+ #
+ # source://rbs//lib/rbs/type_alias_dependency.rb#65
+ def direct_dependency(type, result = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/type_alias_regularity.rb#4
+class RBS::TypeAliasRegularity
+ # @return [TypeAliasRegularity] a new instance of TypeAliasRegularity
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#16
+ def initialize(env:); end
+
+ # source://rbs//lib/rbs/type_alias_regularity.rb#61
+ def build_alias_type(name); end
+
+ # Returns the value of attribute builder.
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#14
+ def builder; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#69
+ def compatible_args?(args1, args2); end
+
+ # Returns the value of attribute diagnostics.
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#14
+ def diagnostics; end
+
+ # source://rbs//lib/rbs/type_alias_regularity.rb#110
+ def each_alias_type(type, &block); end
+
+ # source://rbs//lib/rbs/type_alias_regularity.rb#83
+ def each_mutual_alias_defs(&block); end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#14
+ def env; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#79
+ def nonregular?(type_name); end
+
+ # source://rbs//lib/rbs/type_alias_regularity.rb#22
+ def validate; end
+
+ # source://rbs//lib/rbs/type_alias_regularity.rb#39
+ def validate_alias_type(alias_type, names, types); end
+
+ class << self
+ # source://rbs//lib/rbs/type_alias_regularity.rb#120
+ def validate(env:); end
+ end
+end
+
+# source://rbs//lib/rbs/type_alias_regularity.rb#5
+class RBS::TypeAliasRegularity::Diagnostic
+ # @return [Diagnostic] a new instance of Diagnostic
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#8
+ def initialize(type_name:, nonregular_type:); end
+
+ # Returns the value of attribute nonregular_type.
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#6
+ def nonregular_type; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/type_alias_regularity.rb#6
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/type_name.rb#4
+class RBS::TypeName
+ # @return [TypeName] a new instance of TypeName
+ #
+ # source://rbs//lib/rbs/type_name.rb#9
+ def initialize(namespace:, name:); end
+
+ # source://rbs//lib/rbs/type_name.rb#79
+ def +(other); end
+
+ # source://rbs//lib/rbs/type_name.rb#25
+ def ==(other); end
+
+ # source://rbs//lib/rbs/type_name.rb#55
+ def absolute!; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_name.rb#59
+ def absolute?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_name.rb#51
+ def alias?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_name.rb#47
+ def class?; end
+
+ # source://rbs//lib/rbs/type_name.rb#25
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/type_name.rb#31
+ def hash; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/type_name.rb#67
+ def interface?; end
+
+ # Returns the value of attribute kind.
+ #
+ # source://rbs//lib/rbs/type_name.rb#7
+ def kind; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/type_name.rb#6
+ def name; end
+
+ # Returns the value of attribute namespace.
+ #
+ # source://rbs//lib/rbs/type_name.rb#5
+ def namespace; end
+
+ # source://rbs//lib/rbs/type_name.rb#63
+ def relative!; end
+
+ # source://rbs//lib/rbs/type_name.rb#75
+ def split; end
+
+ # source://rbs//lib/rbs/type_name.rb#39
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/type_name.rb#43
+ def to_namespace; end
+
+ # source://rbs//lib/rbs/type_name.rb#35
+ def to_s; end
+
+ # source://rbs//lib/rbs/type_name.rb#71
+ def with_prefix(namespace); end
+end
+
+# source://rbs//lib/rbs/types.rb#4
+module RBS::Types; end
+
+# source://rbs//lib/rbs/types.rb#394
+class RBS::Types::Alias
+ include ::RBS::Types::Application
+
+ # @return [Alias] a new instance of Alias
+ #
+ # source://rbs//lib/rbs/types.rb#399
+ def initialize(name:, args:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#395
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#421
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#413
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#409
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#405
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/types.rb#252
+module RBS::Types::Application
+ # source://rbs//lib/rbs/types.rb#256
+ def ==(other); end
+
+ # Returns the value of attribute args.
+ #
+ # source://rbs//lib/rbs/types.rb#254
+ def args; end
+
+ # source://rbs//lib/rbs/types.rb#282
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#256
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#266
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#294
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#290
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#262
+ def hash; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/types.rb#253
+ def name; end
+
+ # source://rbs//lib/rbs/types.rb#274
+ def to_s(level = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#298
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#41
+module RBS::Types::Bases; end
+
+# source://rbs//lib/rbs/types.rb#109
+class RBS::Types::Bases::Any < ::RBS::Types::Bases::Base
+ # source://rbs//lib/rbs/types.rb#110
+ def to_s(level = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#114
+ def todo!; end
+end
+
+# source://rbs//lib/rbs/types.rb#42
+class RBS::Types::Bases::Base
+ include ::RBS::Types::NoFreeVariables
+ include ::RBS::Types::NoSubst
+ include ::RBS::Types::EmptyEachType
+ include ::RBS::Types::NoTypeName
+
+ # @return [Base] a new instance of Base
+ #
+ # source://rbs//lib/rbs/types.rb#45
+ def initialize(location:); end
+
+ # source://rbs//lib/rbs/types.rb#49
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#49
+ def eql?(other); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#98
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#94
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#53
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#43
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#64
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#69
+ def to_s(level = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#102
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#107
+class RBS::Types::Bases::Bool < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#121
+class RBS::Types::Bases::Bottom < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#128
+class RBS::Types::Bases::Class < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#123
+class RBS::Types::Bases::Instance < ::RBS::Types::Bases::Base
+ # source://rbs//lib/rbs/types.rb#124
+ def sub(s); end
+end
+
+# source://rbs//lib/rbs/types.rb#119
+class RBS::Types::Bases::Nil < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#122
+class RBS::Types::Bases::Self < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#120
+class RBS::Types::Bases::Top < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#108
+class RBS::Types::Bases::Void < ::RBS::Types::Bases::Base; end
+
+# source://rbs//lib/rbs/types.rb#1283
+class RBS::Types::Block
+ # @return [Block] a new instance of Block
+ #
+ # source://rbs//lib/rbs/types.rb#1288
+ def initialize(type:, required:, self_type: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#1294
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#1317
+ def map_type(&block); end
+
+ # Returns the value of attribute required.
+ #
+ # source://rbs//lib/rbs/types.rb#1285
+ def required; end
+
+ # Returns the value of attribute self_type.
+ #
+ # source://rbs//lib/rbs/types.rb#1286
+ def self_type; end
+
+ # source://rbs//lib/rbs/types.rb#1309
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#1301
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/types.rb#1284
+ def type; end
+end
+
+# source://rbs//lib/rbs/types.rb#352
+class RBS::Types::ClassInstance
+ include ::RBS::Types::Application
+
+ # @return [ClassInstance] a new instance of ClassInstance
+ #
+ # source://rbs//lib/rbs/types.rb#357
+ def initialize(name:, args:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#353
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#381
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#373
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#367
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#363
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/types.rb#200
+class RBS::Types::ClassSingleton
+ include ::RBS::Types::NoFreeVariables
+ include ::RBS::Types::NoSubst
+ include ::RBS::Types::EmptyEachType
+
+ # @return [ClassSingleton] a new instance of ClassSingleton
+ #
+ # source://rbs//lib/rbs/types.rb#204
+ def initialize(name:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#209
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#209
+ def eql?(other); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#243
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#239
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#215
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#202
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#232
+ def map_type_name; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/types.rb#201
+ def name; end
+
+ # source://rbs//lib/rbs/types.rb#222
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#226
+ def to_s(level = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#247
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#23
+module RBS::Types::EmptyEachType
+ # source://rbs//lib/rbs/types.rb#24
+ def each_type; end
+
+ # source://rbs//lib/rbs/types.rb#32
+ def map_type(&block); end
+end
+
+# source://rbs//lib/rbs/types.rb#871
+class RBS::Types::Function
+ # @return [Function] a new instance of Function
+ #
+ # source://rbs//lib/rbs/types.rb#927
+ def initialize(required_positionals:, optional_positionals:, rest_positionals:, trailing_positionals:, required_keywords:, optional_keywords:, rest_keywords:, return_type:); end
+
+ # source://rbs//lib/rbs/types.rb#938
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#1009
+ def amap(array, &block); end
+
+ # source://rbs//lib/rbs/types.rb#1146
+ def drop_head; end
+
+ # source://rbs//lib/rbs/types.rb#1163
+ def drop_tail; end
+
+ # source://rbs//lib/rbs/types.rb#1046
+ def each_param(&block); end
+
+ # source://rbs//lib/rbs/types.rb#1031
+ def each_type; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1117
+ def empty?; end
+
+ # source://rbs//lib/rbs/types.rb#938
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#964
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1188
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1176
+ def has_keyword?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1184
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#952
+ def hash; end
+
+ # source://rbs//lib/rbs/types.rb#1017
+ def hmapv(hash, &block); end
+
+ # source://rbs//lib/rbs/types.rb#992
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#1025
+ def map_type_name(&block); end
+
+ # Returns the value of attribute optional_keywords.
+ #
+ # source://rbs//lib/rbs/types.rb#923
+ def optional_keywords; end
+
+ # Returns the value of attribute optional_positionals.
+ #
+ # source://rbs//lib/rbs/types.rb#919
+ def optional_positionals; end
+
+ # source://rbs//lib/rbs/types.rb#1127
+ def param_to_s; end
+
+ # Returns the value of attribute required_keywords.
+ #
+ # source://rbs//lib/rbs/types.rb#922
+ def required_keywords; end
+
+ # Returns the value of attribute required_positionals.
+ #
+ # source://rbs//lib/rbs/types.rb#918
+ def required_positionals; end
+
+ # Returns the value of attribute rest_keywords.
+ #
+ # source://rbs//lib/rbs/types.rb#924
+ def rest_keywords; end
+
+ # Returns the value of attribute rest_positionals.
+ #
+ # source://rbs//lib/rbs/types.rb#920
+ def rest_positionals; end
+
+ # source://rbs//lib/rbs/types.rb#1142
+ def return_to_s; end
+
+ # Returns the value of attribute return_type.
+ #
+ # source://rbs//lib/rbs/types.rb#925
+ def return_type; end
+
+ # source://rbs//lib/rbs/types.rb#1073
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#1060
+ def to_json(state = T.unsafe(nil)); end
+
+ # Returns the value of attribute trailing_positionals.
+ #
+ # source://rbs//lib/rbs/types.rb#921
+ def trailing_positionals; end
+
+ # source://rbs//lib/rbs/types.rb#1103
+ def update(required_positionals: T.unsafe(nil), optional_positionals: T.unsafe(nil), rest_positionals: T.unsafe(nil), trailing_positionals: T.unsafe(nil), required_keywords: T.unsafe(nil), optional_keywords: T.unsafe(nil), rest_keywords: T.unsafe(nil), return_type: T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1192
+ def with_nonreturn_void?; end
+
+ # source://rbs//lib/rbs/types.rb#1090
+ def with_return_type(type); end
+
+ class << self
+ # source://rbs//lib/rbs/types.rb#1077
+ def empty(return_type); end
+ end
+end
+
+# source://rbs//lib/rbs/types.rb#872
+class RBS::Types::Function::Param
+ # @return [Param] a new instance of Param
+ #
+ # source://rbs//lib/rbs/types.rb#877
+ def initialize(type:, name:, location: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#883
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#883
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#889
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#875
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#893
+ def map_type(&block); end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/types.rb#874
+ def name; end
+
+ # source://rbs//lib/rbs/types.rb#901
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#905
+ def to_s; end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/types.rb#873
+ def type; end
+end
+
+# source://rbs//lib/rbs/types.rb#310
+class RBS::Types::Interface
+ include ::RBS::Types::Application
+
+ # @return [Interface] a new instance of Interface
+ #
+ # source://rbs//lib/rbs/types.rb#315
+ def initialize(name:, args:, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#311
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#339
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#331
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#325
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#321
+ def to_json(state = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/types.rb#790
+class RBS::Types::Intersection
+ # @return [Intersection] a new instance of Intersection
+ #
+ # source://rbs//lib/rbs/types.rb#794
+ def initialize(types:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#799
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#835
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#799
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#809
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#862
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#858
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#805
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#792
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#843
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#851
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#821
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#817
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#826
+ def to_s(level = T.unsafe(nil)); end
+
+ # Returns the value of attribute types.
+ #
+ # source://rbs//lib/rbs/types.rb#791
+ def types; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#866
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#1458
+class RBS::Types::Literal
+ include ::RBS::Types::NoFreeVariables
+ include ::RBS::Types::NoSubst
+ include ::RBS::Types::EmptyEachType
+ include ::RBS::Types::NoTypeName
+
+ # @return [Literal] a new instance of Literal
+ #
+ # source://rbs//lib/rbs/types.rb#1462
+ def initialize(literal:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#1467
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#1467
+ def eql?(other); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1494
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1490
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#1473
+ def hash; end
+
+ # Returns the value of attribute literal.
+ #
+ # source://rbs//lib/rbs/types.rb#1459
+ def literal; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#1460
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#1482
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#1486
+ def to_s(level = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1498
+ def with_nonreturn_void?; end
+
+ class << self
+ # source://rbs//lib/rbs/types.rb#1518
+ def unescape_string(string, is_double_quote); end
+ end
+end
+
+# source://rbs//lib/rbs/types.rb#1502
+RBS::Types::Literal::TABLE = T.let(T.unsafe(nil), Hash)
+
+# source://rbs//lib/rbs/types.rb#5
+module RBS::Types::NoFreeVariables
+ # source://rbs//lib/rbs/types.rb#6
+ def free_variables(set = T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/types.rb#11
+module RBS::Types::NoSubst
+ # source://rbs//lib/rbs/types.rb#12
+ def sub(s); end
+end
+
+# source://rbs//lib/rbs/types.rb#17
+module RBS::Types::NoTypeName
+ # source://rbs//lib/rbs/types.rb#18
+ def map_type_name; end
+end
+
+# source://rbs//lib/rbs/types.rb#626
+class RBS::Types::Optional
+ # @return [Optional] a new instance of Optional
+ #
+ # source://rbs//lib/rbs/types.rb#630
+ def initialize(type:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#635
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#671
+ def each_type; end
+
+ # source://rbs//lib/rbs/types.rb#635
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#645
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#701
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#697
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#641
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#628
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#686
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#679
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#653
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#649
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#657
+ def to_s(level = T.unsafe(nil)); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/types.rb#627
+ def type; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#705
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#1338
+class RBS::Types::Proc
+ # @return [Proc] a new instance of Proc
+ #
+ # source://rbs//lib/rbs/types.rb#1344
+ def initialize(location:, type:, block:, self_type: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#1351
+ def ==(other); end
+
+ # Returns the value of attribute block.
+ #
+ # source://rbs//lib/rbs/types.rb#1340
+ def block; end
+
+ # source://rbs//lib/rbs/types.rb#1403
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#1351
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#1361
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1441
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1437
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#1357
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#1342
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#1424
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#1415
+ def map_type_name(&block); end
+
+ # Returns the value of attribute self_type.
+ #
+ # source://rbs//lib/rbs/types.rb#1341
+ def self_type; end
+
+ # source://rbs//lib/rbs/types.rb#1378
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#1368
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#1387
+ def to_s(level = T.unsafe(nil)); end
+
+ # Returns the value of attribute type.
+ #
+ # source://rbs//lib/rbs/types.rb#1339
+ def type; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1445
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#517
+class RBS::Types::Record
+ # @return [Record] a new instance of Record
+ #
+ # source://rbs//lib/rbs/types.rb#521
+ def initialize(location:, all_fields: T.unsafe(nil), fields: T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#538
+ def ==(other); end
+
+ # Returns the value of attribute all_fields.
+ #
+ # source://rbs//lib/rbs/types.rb#518
+ def all_fields; end
+
+ # source://rbs//lib/rbs/types.rb#586
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#538
+ def eql?(other); end
+
+ # Returns the value of attribute fields.
+ #
+ # source://rbs//lib/rbs/types.rb#518
+ def fields; end
+
+ # source://rbs//lib/rbs/types.rb#548
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#617
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#613
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#544
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#519
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#602
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#595
+ def map_type_name(&block); end
+
+ # Returns the value of attribute optional_fields.
+ #
+ # source://rbs//lib/rbs/types.rb#518
+ def optional_fields; end
+
+ # source://rbs//lib/rbs/types.rb#563
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#559
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#570
+ def to_s(level = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#621
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#1326
+module RBS::Types::SelfTypeBindingHelper
+ private
+
+ # source://rbs//lib/rbs/types.rb#1329
+ def self_type_binding_to_s(t); end
+
+ class << self
+ # source://rbs//lib/rbs/types.rb#1329
+ def self_type_binding_to_s(t); end
+ end
+end
+
+# source://rbs//lib/rbs/types.rb#434
+class RBS::Types::Tuple
+ # @return [Tuple] a new instance of Tuple
+ #
+ # source://rbs//lib/rbs/types.rb#438
+ def initialize(types:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#443
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#478
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#443
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#453
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#508
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#504
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#449
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#436
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#493
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#486
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#465
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#461
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#470
+ def to_s(level = T.unsafe(nil)); end
+
+ # Returns the value of attribute types.
+ #
+ # source://rbs//lib/rbs/types.rb#435
+ def types; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#512
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#710
+class RBS::Types::Union
+ # @return [Union] a new instance of Union
+ #
+ # source://rbs//lib/rbs/types.rb#714
+ def initialize(types:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#719
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#754
+ def each_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#719
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#729
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#781
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#777
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#725
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#712
+ def location; end
+
+ # source://rbs//lib/rbs/types.rb#762
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#770
+ def map_type_name(&block); end
+
+ # source://rbs//lib/rbs/types.rb#741
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#737
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#746
+ def to_s(level = T.unsafe(nil)); end
+
+ # Returns the value of attribute types.
+ #
+ # source://rbs//lib/rbs/types.rb#711
+ def types; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#785
+ def with_nonreturn_void?; end
+end
+
+# source://rbs//lib/rbs/types.rb#1205
+class RBS::Types::UntypedFunction
+ # @return [UntypedFunction] a new instance of UntypedFunction
+ #
+ # source://rbs//lib/rbs/types.rb#1208
+ def initialize(return_type:); end
+
+ # source://rbs//lib/rbs/types.rb#1232
+ def each_param(&block); end
+
+ # source://rbs//lib/rbs/types.rb#1224
+ def each_type(&block); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1258
+ def empty?; end
+
+ # source://rbs//lib/rbs/types.rb#1212
+ def free_variables(acc = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1266
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1262
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#1216
+ def map_type(&block); end
+
+ # source://rbs//lib/rbs/types.rb#1274
+ def param_to_s; end
+
+ # source://rbs//lib/rbs/types.rb#1278
+ def return_to_s; end
+
+ # Returns the value of attribute return_type.
+ #
+ # source://rbs//lib/rbs/types.rb#1206
+ def return_type; end
+
+ # source://rbs//lib/rbs/types.rb#1246
+ def sub(subst); end
+
+ # source://rbs//lib/rbs/types.rb#1240
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#1254
+ def update(return_type: T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#1270
+ def with_nonreturn_void?; end
+
+ # source://rbs//lib/rbs/types.rb#1250
+ def with_return_type(ty); end
+end
+
+# source://rbs//lib/rbs/types.rb#131
+class RBS::Types::Variable
+ include ::RBS::Types::NoTypeName
+ include ::RBS::Types::EmptyEachType
+
+ # @return [Variable] a new instance of Variable
+ #
+ # source://rbs//lib/rbs/types.rb#137
+ def initialize(name:, location:); end
+
+ # source://rbs//lib/rbs/types.rb#142
+ def ==(other); end
+
+ # source://rbs//lib/rbs/types.rb#142
+ def eql?(other); end
+
+ # source://rbs//lib/rbs/types.rb#152
+ def free_variables(set = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#191
+ def has_classish_type?; end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#187
+ def has_self_type?; end
+
+ # source://rbs//lib/rbs/types.rb#148
+ def hash; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/types.rb#133
+ def location; end
+
+ # Returns the value of attribute name.
+ #
+ # source://rbs//lib/rbs/types.rb#132
+ def name; end
+
+ # source://rbs//lib/rbs/types.rb#162
+ def sub(s); end
+
+ # source://rbs//lib/rbs/types.rb#158
+ def to_json(state = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/types.rb#181
+ def to_s(level = T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/types.rb#195
+ def with_nonreturn_void?; end
+
+ class << self
+ # source://rbs//lib/rbs/types.rb#166
+ def build(v); end
+
+ # source://rbs//lib/rbs/types.rb#176
+ def fresh(v = T.unsafe(nil)); end
+ end
+end
+
+# source://rbs//lib/rbs/errors.rb#303
+class RBS::UnknownMethodAliasError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [UnknownMethodAliasError] a new instance of UnknownMethodAliasError
+ #
+ # source://rbs//lib/rbs/errors.rb#311
+ def initialize(type_name:, original_name:, aliased_name:, location:); end
+
+ # Returns the value of attribute aliased_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#308
+ def aliased_name; end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#309
+ def location; end
+
+ # Returns the value of attribute original_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#307
+ def original_name; end
+
+ # Returns the value of attribute type_name.
+ #
+ # source://rbs//lib/rbs/errors.rb#306
+ def type_name; end
+end
+
+# source://rbs//lib/rbs/version.rb#4
+RBS::VERSION = T.let(T.unsafe(nil), String)
+
+# source://rbs//lib/rbs/validator.rb#4
+class RBS::Validator
+ # @return [Validator] a new instance of Validator
+ #
+ # source://rbs//lib/rbs/validator.rb#9
+ def initialize(env:, resolver:); end
+
+ # source://rbs//lib/rbs/validator.rb#15
+ def absolute_type(type, context:, &block); end
+
+ # Returns the value of attribute definition_builder.
+ #
+ # source://rbs//lib/rbs/validator.rb#7
+ def definition_builder; end
+
+ # Returns the value of attribute env.
+ #
+ # source://rbs//lib/rbs/validator.rb#5
+ def env; end
+
+ # Returns the value of attribute resolver.
+ #
+ # source://rbs//lib/rbs/validator.rb#6
+ def resolver; end
+
+ # source://rbs//lib/rbs/validator.rb#172
+ def type_alias_dependency; end
+
+ # source://rbs//lib/rbs/validator.rb#176
+ def type_alias_regularity; end
+
+ # source://rbs//lib/rbs/validator.rb#152
+ def validate_class_alias(entry:); end
+
+ # source://rbs//lib/rbs/validator.rb#102
+ def validate_method_definition(method_def, type_name:); end
+
+ # Validates presence of the relative type, and application arity match.
+ #
+ # source://rbs//lib/rbs/validator.rb#22
+ def validate_type(type, context:); end
+
+ # source://rbs//lib/rbs/validator.rb#61
+ def validate_type_alias(entry:); end
+
+ # source://rbs//lib/rbs/validator.rb#118
+ def validate_type_params(params, type_name:, location:, method_name: T.unsafe(nil)); end
+end
+
+# source://rbs//lib/rbs/variance_calculator.rb#4
+class RBS::VarianceCalculator
+ # @return [VarianceCalculator] a new instance of VarianceCalculator
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#78
+ def initialize(builder:); end
+
+ # Returns the value of attribute builder.
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#76
+ def builder; end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#82
+ def env; end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#169
+ def function(type, result:, context:); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#98
+ def in_inherit(name:, args:, variables:); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#86
+ def in_method_type(method_type:, variables:); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#110
+ def in_type_alias(name:); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#176
+ def negate(variance); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#121
+ def type(type, result:, context:); end
+end
+
+# source://rbs//lib/rbs/variance_calculator.rb#5
+class RBS::VarianceCalculator::Result
+ # @return [Result] a new instance of Result
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#8
+ def initialize(variables:); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#45
+ def compatible?(var, with_annotation:); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#24
+ def contravariant(x); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#15
+ def covariant(x); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#37
+ def each(&block); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#41
+ def include?(name); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#60
+ def incompatible?(params); end
+
+ # source://rbs//lib/rbs/variance_calculator.rb#33
+ def invariant(x); end
+
+ # Returns the value of attribute result.
+ #
+ # source://rbs//lib/rbs/variance_calculator.rb#6
+ def result; end
+end
+
+# source://rbs//lib/rbs/vendorer.rb#4
+class RBS::Vendorer
+ # @return [Vendorer] a new instance of Vendorer
+ #
+ # source://rbs//lib/rbs/vendorer.rb#8
+ def initialize(vendor_dir:, loader:); end
+
+ # source://rbs//lib/rbs/vendorer.rb#21
+ def clean!; end
+
+ # source://rbs//lib/rbs/vendorer.rb#28
+ def copy!; end
+
+ # source://rbs//lib/rbs/vendorer.rb#13
+ def ensure_dir; end
+
+ # Returns the value of attribute loader.
+ #
+ # source://rbs//lib/rbs/vendorer.rb#6
+ def loader; end
+
+ # Returns the value of attribute vendor_dir.
+ #
+ # source://rbs//lib/rbs/vendorer.rb#5
+ def vendor_dir; end
+end
+
+# source://rbs//lib/rbs/errors.rb#547
+class RBS::WillSyntaxError < ::RBS::DefinitionError
+ include ::RBS::DetailedMessageable
+
+ # @return [WillSyntaxError] a new instance of WillSyntaxError
+ #
+ # source://rbs//lib/rbs/errors.rb#552
+ def initialize(message, location:); end
+
+ # Returns the value of attribute location.
+ #
+ # source://rbs//lib/rbs/errors.rb#550
+ def location; end
+end
+
+# source://rbs//lib/rbs/writer.rb#4
+class RBS::Writer
+ # @return [Writer] a new instance of Writer
+ #
+ # source://rbs//lib/rbs/writer.rb#8
+ def initialize(out:); end
+
+ # source://rbs//lib/rbs/writer.rb#361
+ def attribute(kind, attr); end
+
+ # source://rbs//lib/rbs/writer.rb#42
+ def format_annotation(annotation); end
+
+ # source://rbs//lib/rbs/writer.rb#23
+ def indent(size = T.unsafe(nil)); end
+
+ # Returns the value of attribute indentation.
+ #
+ # source://rbs//lib/rbs/writer.rb#6
+ def indentation; end
+
+ # source://rbs//lib/rbs/writer.rb#288
+ def method_name(name); end
+
+ # source://rbs//lib/rbs/writer.rb#214
+ def name_and_args(name, args); end
+
+ # source://rbs//lib/rbs/writer.rb#202
+ def name_and_params(name, params); end
+
+ # Returns the value of attribute out.
+ #
+ # source://rbs//lib/rbs/writer.rb#5
+ def out; end
+
+ # source://rbs//lib/rbs/writer.rb#30
+ def prefix; end
+
+ # source://rbs//lib/rbs/writer.rb#18
+ def preserve!(preserve: T.unsafe(nil)); end
+
+ # @return [Boolean]
+ #
+ # source://rbs//lib/rbs/writer.rb#14
+ def preserve?; end
+
+ # source://rbs//lib/rbs/writer.rb#391
+ def preserve_empty_line(prev, decl); end
+
+ # source://rbs//lib/rbs/writer.rb#224
+ def put_lines(lines, leading_spaces:); end
+
+ # source://rbs//lib/rbs/writer.rb#34
+ def puts(string = T.unsafe(nil)); end
+
+ # source://rbs//lib/rbs/writer.rb#79
+ def write(contents); end
+
+ # source://rbs//lib/rbs/writer.rb#60
+ def write_annotation(annotations); end
+
+ # source://rbs//lib/rbs/writer.rb#66
+ def write_comment(comment); end
+
+ # source://rbs//lib/rbs/writer.rb#114
+ def write_decl(decl); end
+
+ # source://rbs//lib/rbs/writer.rb#309
+ def write_def(member); end
+
+ # source://rbs//lib/rbs/writer.rb#97
+ def write_directive(dir); end
+
+ # source://rbs//lib/rbs/writer.rb#301
+ def write_loc_source(located); end
+
+ # source://rbs//lib/rbs/writer.rb#234
+ def write_member(member); end
+end
+
+# source://rbs//lib/rdoc/discover.rb#8
+class RDoc::Parser::RBS < ::RDoc::Parser
+ # source://rbs//lib/rdoc/discover.rb#10
+ def scan; end
+end
diff --git a/Library/Homebrew/sorbet/rbi/gems/ruby-lsp@0.17.11.rbi b/Library/Homebrew/sorbet/rbi/gems/ruby-lsp@0.17.11.rbi
new file mode 100644
index 0000000000..62a7db7a95
--- /dev/null
+++ b/Library/Homebrew/sorbet/rbi/gems/ruby-lsp@0.17.11.rbi
@@ -0,0 +1,12 @@
+# typed: true
+
+# DO NOT EDIT MANUALLY
+# This is an autogenerated file for types exported from the `ruby-lsp` gem.
+# Please instead update this file by running `bin/tapioca gem ruby-lsp`.
+
+
+# source://ruby-lsp//lib/ruby-lsp.rb#4
+module RubyLsp; end
+
+# source://ruby-lsp//lib/ruby-lsp.rb#5
+RubyLsp::VERSION = T.let(T.unsafe(nil), String)