# Jan. 22, 2024 ## soutaro * minitestがmutex_mに依存している * URIのRBSをgemに移せるのか? * bundled/default gem用のgem_rbs_collectionを作る? * :-1: `rbs collection` せずにdefault/bundled gemを読めなくなる * `rbs -r prime` * `rbs collection init` * :+1: RBSのリリースサイクルとRBSの更新を分ける * :+1: Gemのバージョンを上手くやる * :+1: RBS::UnitTestのテストをできるようにする(gem_rbs_collectionではやりたくない、無理) * 最終的には * Bundled gemはそれぞれのrepositoryでRBSを管理 * 当面は * ある程度できあがっているRBSはリポジトリに移動 * Primeとかmutex_mとか * gem_rbs_collectionに移行する * URIとかNet-???とか * gem_rbs_collectionではbundled gemだけ特別扱いでテストをする * Inline RBS型宣言をSteepではなくRBSの機能にする案 * 松田さん「RBSはやりたい気持ちがあるがSteepはいらない」 * Matzのapproveが必要? * Rubyファイルを読んで回らないと行けないので、ちょっとダルい * Parserどうすんの問題 * あ、 `rbs-inline` gemで解決じゃん * rbs-inline gemで開発を進める → RubyKaigiでお披露目 → その場でMatzにRBSとしての実装の承認を迫る ```rbs! type Foo::str = String class Foo type str = Strine end ``` ```ruby! class Foo # @rbs: type str = String # NG # @rbs: (str) -> Integer def foo(s) s.to_i end end M = Module.new M.module_eval do # @rbs: () -> Integer def foo end end ``` ```ruby= module RBS::AST::Inline class ClassDecl attr_reader name: Symbol end class MethodDecl end end class RBS::AST::Inline::Parser def parse: (Prism::AST) -> RBS::AST::Inline::t end ``` ## pocke * GHA for gem_rbs_collection * 今週中ぐらいに一回ミニマムで取り入れたい気持ち * これのネタでRubyKaigiに出そうかなあ * あんまりRuby関係ないけど * いい名前がない * RBS と MF の仕事をweeklyで切り替えることにした ## ksss - Ruby3.3アップデート記事のRBS部分を書きました。 - 1月26日(金)公開予定 - :tada: :tada: :tada: - aws-sdk-rubyは今週リリースするっぽい。 - https://github.com/aws/aws-sdk-ruby/pull/2961 - :clap: :clap: :clap: - RBSでProperty based testingを作ってみています。 - RBS as a PropertyでRaaP - RBSを書いたらテストケースにもなる - テストケースを書いたらRBSにもなる! - factory_botに似てる? cliから(メインはこっち) ``` $ raap Integer String $ raap Integer#pow String#grep (Integer) -> Integer Fail: 1.pow(-2) => (3/5) (Float) -> Float ... ``` テストコードから ```ruby property "(foo: Integer) -> true" do |foo:| foo #=> ランダムなIntegerが入ってる Foo.new.bar(foo) # trueが返ってきたらOK end ``` * https://www.lambdanote.com/collections/proper-erlang-elixir * https://xtech.nikkei.com/it/article/COLUMN/20080304/295346/ ## mame * TypeProf ブロックに引数を渡す周りの整理中 * https://bugs.ruby-lang.org/issues/19117 # Dec. 18, 2023 ## soutaro * RBS 3.4に向けて作業中 * Primeのテスト (bundled gem) * gemに入れてrubyでも `rake test` でテストする * delegate gemの型はどこに置こう? (default gem) * gemの方に入れるとsyncが面倒くさいので、rbsリポジトリでやる * default gemは減らしていく方針 * delegate gem (Default gem) が更新されると、すぐに ruby/ruby にsyncされるので、そっち経由でRBSのテストに入ってきてエラーに気づくことができる * `with_int` とかのHelperをexportしたい * Lexerを直したくて困っている ### RBSのLexer * `"\\"` と `"\""` とか `"\a"` とか `"\\なんか"` とかをサポートしたい Lexerのルール。 ``` escape_char = "\\" [abefnrstv]; dqstring = ["] ("\\" escape_char | "\\" "\\" | "\\" | [^"\\\x00])* ["]; ``` なんか動かん。 https://re2c.org/manual/manual_c.html#regular-expressions ## pocke * GHA on gem_rbs_collection * `File.read` とかの型定義 * 社内のインターン生にやってもらえそう * 特に音沙汰がないのでRuby 3.3には間に合わない気がする * RBS を使って開発していた。 https://github.com/pocke/graphql-coverage ## ksss - ひたすらaws-sdk-ruby - https://github.com/aws/aws-sdk-ruby/pull/2961 - Delegator問題 - RBS::Testを通すまではやりたい - rbs_skip: true - S3(1155 examples, 17 failures) - CIとして走らせるのは大変そう過ぎる ```rbs= module Seahorse module Client # <!-- # RBS does not support Delegator. # the behavior is mimicked `Seahorse::Client::Response` as much as possible. # --> interface _Response[DATA] def context: () -> untyped def data: () -> DATA def data=: (DATA?) -> DATA def error: () -> ::StandardError? def error=: (::StandardError?) -> ::StandardError? def checksum_validated: () -> ::String? def on: (Integer) { (self) -> void } -> self | (Range[Integer]) { (self) -> void } -> self def on_success: () { (self) -> void } -> self def successful?: () -> bool end end end module Aws module S3 class Client interface _HeadBucketResponse # include ::Seahorse::Client::_Response[Types::HeadBucketOutput] def bucket_location_type: () -> ("AvailabilityZone") def bucket_location_name: () -> ::String def bucket_region: () -> ::String def access_point_alias: () -> bool end # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Client.html#head_bucket-instance_method def head_bucket: ( bucket: ::String, ?expected_bucket_owner: ::String ) -> ( Seahorse::Client::Response[Types::HeadBucketOutput] | Seahorse::Client::Response[Types::HeadBucketOutput] & _HeadBucketResponse ) | ( Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options ) -> _HeadBucketResponse end end end ``` `RBS_TEST_UNCHECKED_CLASSES` * https://qiita.com/shinout/items/13d32ed519a9a7aa76e5 * https://qiita.com/zwtin/items/ed621e869ee834f25051 ## mame * TypeProf * ブロック引数の splat サポートずっとやってた * `yield [1, 2]` -> `foo {|x, y| ... }` * 部分的再解析と相性が悪くていろいろ作り直してた * メソッドが yield する型の扱いを見直してる # Dec. 4, 2023 ## soutaro * RBS 3.4 * https://github.com/ruby/rbs/discussions/1631 * Ruby 3.3に向けてやっていくバージョン * 型定義の修正 * RDocの更新 * バグ修正 * bundled gemsでテストできるようにする * https://github.com/ruby/rbs/pull/1660 ```ruby= require "rbs/unit_test" class PrimeTest < TestUnit::TestCase include RBS::UnitTest::TypeAssertion def test_foo assert_send_type( "() { (Integer) -> void } -> void", Foo, :bar, &proc { break_from_block } ) end end ``` ## pocke - 引き続き GHA を使って gem_rbs_collection のレビュー周りを作っている - なんとなくできそう - `RBS::UnitTest`がgem_rbs_collectionで使えないのがちょっと悲しい - `IO` の型がおかしい - https://github.com/ruby/rbs/blob/master/core/io.rbs#L3083 path は String じゃない - `OptionParser` の型が使いづらい - https://github.com/ruby/rbs/blob/master/stdlib/optparse/0/optparse.rbs#L385-L387 - ```ruby # RBS type t = { a: Integer } # @type var params: t params = {} OptionParser.new {}.parse(args, into: params) ``` - securityの相談 ![Screen Shot 2023-12-04 at 15.45.14](https://hackmd.io/_uploads/BkHcrgiB6.png) ``` { a: Integer } <: { def []=: (Symbol, untyped) -> untyped } { def []=: (:a, Integer) -> Integer} <: { def []=: (Symbol, untyped) -> untyped } Symbol <: :a ``` ``` interface _Intoable[unchecked out T] def []=: [T] (T, untyped) -> untyped end interface _Intoable def []=: (untyped, untyped) -> untyped end def parse: [T] (Array[untyped], into: _Intoable[T]) -> void def parse: (Array[untyped], into: _Intoable | Hash[Symbol, untyped]) -> void OptionParser.new{}.parse(args, into: params) #$ :a | :b | :c ``` ## ksss - rbs - multiple validate - https://github.com/ruby/rbs/pull/1648 - gem_rbs_collectionからrubygemsへ移行する場合 - https://github.com/ruby/rbs/pull/1659 - aws-sdk-ruby - https://github.com/aws/aws-sdk-ruby/issues/2950 - Clientの型 - https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/Lambda/Client.html#create_code_signing_config-instance_method - テスト - https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-acm/features/smoke_step_definitions.rb - ドキュメント - rbとrbsでどちらもドキュメントが必要? ```ruby= client.foo(foo: 123, bar: "hello") params = { foo: 123, bar: "hello" } params[:baz] = :sym if baz? client.foo(**params.reverse_merge(default_params)) client.foo( foo: 123, bar: "Hello", baz: :sym if baz?, ) ``` ```rbs= def foo: (foo: Integer, bar: String) -> void | ({ foo: Integer, bar: String } args) -> void ``` ```rbs= def foo: (foo: Integer, bar: String, baz: Symbol) -> void | (Hash[Symbol, untyped] args) -> void ``` 1. Steepを直して、recordをキーワード引数として読み替えられるようにする 2. `Hash[Symbol, untyped]` を受け取る 3. レコード型を使ってキーワード引数を定義できるようにRBSを直す 4. Steepでキーワード引数で型エラーになったときに、暗黙に `Hash[Symbol, untyped]` に落ちると型エラーを見逃す ## mame * typeprof * 条件式中の && の flow analysis を作ろうとしてまだできてない * 複数の引数をとるブロックを先に直したいかも * `hash.map {|k, v| }` の k と v の型が untyped ```ruby= # a : Foo | nil if a && a.foo # a is not nil else # a is nil or a.foo is falsy end ``` * https://github.com/soutaro/steep/blob/master/sig/steep/ast/types/logic.rbs#L60-L79 # Nov 20, 2023 ## soutaro * RubyConf 2023 * ruby-lsp addon * irb * `gem 'rbs', '<3'` * RBSのロゴ * AWS SDK <div style="width: 20%"> ![RBS logo -- red](https://hackmd.io/_uploads/ByJq6OO46.png) ![RBS logo -- black](https://hackmd.io/_uploads/B1dcpOO46.png) </div> ## pocke * RWC * gem_rbs_collection の管理 * https://hackmd.io/OBmj4M3tT8SOUXdGjKqntg WIP * GitHub Actions について色々調べている ## ksss * Kaigi on Rails * ??? * rbs validate * https://github.com/ruby/rbs/issues/1543 * https://github.com/ruby/rbs/pull/1615 * rbs diff * https://github.com/ruby/rbs/pull/1623 ## mame * TypeProf * リハビリ中 * go to type definition 作った ```ruby class Foo end foo = Foo.new foo # ↑で hover したら "Foo" と出る # goto type definition したら `class Foo;end` へ飛ぶ ``` * definition / type definiton / declaration / implementation それぞれなんだっけ # Oct 30, 2023 ## Kaigi on Railsの話 * 型の勉強会やりたい → 神速さんが主導してくれそう * (Sorbetユーザーの人が) Sorbetでファントムタイプを使ってオブジェクトの状態を表していて便利 * Steep遅くてつらい * komiyaさんの環境とかだと、LSPでのオンデマンドのチェックは快適だけど、RBSファイルを編集した直後が重かったり、初回起動が重かったりで大変 * pocke, sinsoku, ksss, tkomiya, ?(Sorbetユーザ), yla, kaneko-san ```erb= <% [1,2,3].each do |i| %> Hello <%= i %> <%= i.upcase %> <% end %> ``` ```ruby= [1, 2, 3].each do |i| ;;;;;;;; i ;;;;;; i.upcase ;; end ``` ## soutaro * rbsのリリースをしたい * `test/type_check_test.rb` * https://ruby-jp.slack.com/archives/CM3PA3DAB/p1698473038870859 ## pocke * Kaigi on Rails で色々話した * gem_rbs_collection をいい感じに運営するのを ## mame # Oct 16, 2023 ## soutaro * Hand, foot, and mouth disease * `void` とか `class` とかの型を書ける位置 https://github.com/ruby/rbs/pull/1566 * RBS 3.3 * coreの型をいろいろ直してもらっていたら収拾がつかなくなっている * `(?) -> void` * ブロックの型のために理論上は必要 * メソッドがあること「だけ」を表現するために使うかも * prototypeで作った型として書くのにも使える * Moduleのselfの型の整理 https://hackmd.io/F_bVms8MQs2f_nitND_xBQ * Inline RBS構文 https://hackmd.io/UmQyBfhkQICjXavInNnGyw ## pocke - 欠席 ## ksss - Kaigi on Railsの準備 - 書いてました。 - https://github.com/ksss/orthoses-yard - https://github.com/ksss/rubocop-yard - こんなのがあるらしい - https://speakerdeck.com/sinsoku/yard-with-rbs-syntax?slide=11 - https://github.com/sinsoku/yard-sig ```ruby= # @param [Boolean, Hash, #read] x nanka # @param [[bool | Hash[untyped, untyped] | _WithRead]] y nanka def foo(x, y) end ``` ## mame * TypeProf進捗なし… * インフルエンザ * 大江戸Ruby会議10 * 開発者会議 # Sep 25, 2023 ## soutaro 休み ## pocke * rbs collection について書いた https://moneyforward-dev.jp/entry/2023/09/15/rbs-collection-basics-and-components * manifest.yaml で stdlib 以外も読めていいのではのissue https://github.com/ruby/rbs/issues/1538 * RBS の新構文まとめ記事を書いている * ruby-jp とか見ていてもあんまり知られていない感あるので * RWC で RBS の話をする予定 ## ksss * アプリケーションにRBSを導入した * 今後ユースケースを提供できれば ## mame * YARPバックエンドに移行中 * すぐにcore dumpしたのでYARPのバグだしやってた # Sep 4, 2023 ## soutaro - rbs_protobufの改修をしている - filterをできるようにした - https://github.com/square/rbs_protobuf/pull/34 - 300個のRBSファイルがあるとSteepがかなり厳しい - https://github.com/soutaro/steep/issues/661 - `__todo__` - `untyped` ## ksss - rbs diff - https://github.com/ruby/rbs/issues/1448 - rbs prototype runtime --todo - https://github.com/ruby/rbs/issues/1449 ## Immutable String ```rbs= immutable String String.frozen frozen String def freeze: () -> immutable(self) class String def gsub: (Regexp, String) -> String %a{mutating} def gsub!: (Regexp, String) -> self? end s = "".freeze #: immutable String s.gsub(/./, "") s.gub!(/./, "") a = s.dup x = a #: immutable String a.gsub!(/./, "") ``` ## belongs_to * `belongs_to` は最初レコードが設定されるまでは `nil` だけど、それ以降はnonnil * 例外的な状況のためにoptionalにしたくない * SwiftだとImplicitly unwraped optionals * optionalなんだけど、unwrapなしでいける * Sorbet勢はどうしてるんだろう? * mustがあるからいいのかも? # Aug 21, 2023 ## soutaro * RubyConf 2023 -- deadline 3:59pm * RBS 3.2 * そろそろ * parsseg * treeの型の表現を直して戦えるかな * yarp gem * いつでた? * 昨日か一昨日Kevinが教えてくれた ```ruby= irb(main):006:0> YARP.parse("def foo\nif\nend").value => ProgramNode(0...14)( [], StatementsNode(0...14)( [DefNode(0...14)((4...7), nil, nil, StatementsNode(8...14)([ IfNode(8...14)((8...10), MissingNode(8...10)(), nil, nil, (11...14))]), [], (0...3), nil, nil, nil, nil, (14...14))])) ``` * `MissingNode`! :bomb: ## pocke * https://github.com/ruby/rbs/pull/1447 * rbsのCI修正。今きているPRはrebaseしないとだめそう * RWC 2023にproposal出した * RBSの入門について * 8月中に結果が来るらしい * Kaigi on Rails も出しているけど、こちらはRBSネタではない * 先週は仕事であんまりrbsを触ってなかった ## ksss * orthosesとprototypeの話 * https://ruby.slack.com/archives/CJ7L5P5HD/p1692081199631449 * mergeの話は一旦無し * Kaigi on Railsもorthoses-railsで出してる * rbs diff * もうちょっと練って次回あたりに相談 ## mame * TypeProf * 実験的に rename を実装してみた(follow up でのデモ用) * 実用には遠いなあ * alias, attr_readerに上手く対応する必要がある * superで暗黙的に呼び出しているところ * 既存メソッド名と衝突する場合は避けるとか色々 * YARP への置き換えやってみてる * MissingNodeの扱いがダルそう * APIがまだコロコロ変わると知った # Aug 7, 2023 ## soutaro * https://github.com/soutaro/rbs-src * 前回話したやつ * 良い * pocke workflow 1. sigの下にmonkey patchする 2. 動作確認する 3. ~/src/gem_rbs_collection 以下のリポジトリを書き換える * よくないところ * 全リポジトリのcloneが必要でダルい * 一回cloneしたものをcloneするとか * git worktree?? * collection updateすると意味わからなくなる * Steepfileの書き換えが必要でダルい * gem_rbs_collection の `bin` 以下のものをどっかで再利用できるようにしたい * `init_new_test` * `run` * `test` * ruby/rbs_collection_tools 新しいリポジトリを作る? * gem_rbs_collection.gemspec * → 再利用したい人が頑張ってコピーする ## pocke * 引っ越しが終わった * ドキュメントを書くのに力を入れたい * 入門向け * ひとまずブログとかに書いていく予定 ## mame * インターフェイスの対応についてちょっと考えてた * とりあえず _ToAry だけ特別対応した * 解析器ぽい部分を長いこと触ってなかったので勘を取り戻すのに時間くってる * followup event で進捗なくて困ってる * @soutaro: わかる ## ksss * rbs_diff * どうでしょう?: https://gist.github.com/ksss/15e7d6afacc139567ccfa3b2c92d187b * railsのrbs * 昔の提案: https://github.com/ruby/gem_rbs_collection/pull/176 * 昔作った方: https://github.com/ksss/gem_rbs_collection/tree/rails-generator-full * 今作業している方: https://github.com/ksss/orthoses-rails/tree/main/examples/rails # July 24, 2023 ## soutaro * Steep 1.5.1 * RBS 3.1.1 * Steepの編集中に補完が効かなくなる問題の修正 * https://github.com/soutaro/steep/pull/883 * 全部直ってはいない * `String#[]=` * RBSの名前空間のバグを直している * 3.1.2の予定 ## pocke * 特に何もやってない気がする… * https://github.com/ruby/rbs/pull/1316 * リテラルのto_sを直すやつ、undumpを使うのはダメだと気がついたところで放置してた * https://ruby.slack.com/archives/CJ7L5P5HD/p1689231920117329 * 今週末引っ越しなのでその準備をずっとやってます ## mame * find references を作ってみた、程度 * https://timeedev.connpass.com/event/288668/ * https://docs.google.com/spreadsheets/d/1VRdY3fHJL6kN2y0yhAd8rOZkyBb-q4EGIcL5BM1wDSM/edit ## rbs compose (仮) ```shell= $ rbs vendor activesupport $ rbs X add activesupport 7.0 ## sig/gems/activesupport-7.0/**.rbs ができる $ rbs X pull activesupport $ rbs X push activesupport $ rbs collection pr sig/gems/activesupport-7.0/foo.rbs $ rbs collection pr sig/foo.rbs ``` ```shell= $ rbs collection install --clone # => sig/gems/以下にリポジトリが入る # => sig/gems/gem_rbs_collection/activesupport-7.0 # sig/gems/gem_rbs_collection <= .gitignore # sig/gems/foo.rbs $ rbs makepullrequest sig/gems/foo.rbs gem name? > foo version? > 1.0 ``` # July 10, 2023 ## soutaro * Steep 1.5 * https://github.com/soutaro/steep/issues?q=is%3Aopen+is%3Aissue+milestone%3A%22Steep+1.5%22 * https://github.com/soutaro/steep/pull/851 * https://github.com/soutaro/steep/pull/850 * `.pre` で出すとみんなテストしてくれる * https://www.timedia.co.jp/tech/20230706-tech/ ```ruby= array = [1,2,3] # Array[Integer] if x = array[i] #: Integer? else # UnreachableではないがUnreachableと判定 end case x when Integer # なんか when nil # なんか else # 防御的にelseを書きたい raise end x = 123 eval("x = :foo") x = nil #: Integer | String | nil y = case x when Integer x+1 when nil 0 else raise "unsupported: #{ x.inspect }" end y = case x when Integer when nil else # @unreachable raise end y + 2 ``` * RubyのRun Time Type Information * 型つきのレイヤーを入れる * `Array[Integer]` と `IntegerArray` * StaticPython * JITでいらないコードの検出とかができそう ## pocke * コードレビューしてた * Literalのto_sを直したいけど、微妙なコードになる * https://github.com/ruby/rbs/pull/1316 * https://github.com/ruby/rbs/blob/master/ext/rbs_extension/unescape.c * https://github.com/ruby/rbs/blob/master/ext/rbs_extension/lexer.re * `def foo: () -> :"foo"` * Ruby 2.xを落としたい * https://github.com/ruby/rbs/pull/1364 * RBS Railsの型名を絶対パスにしたい * https://github.com/pocke/rbs_rails/pull/265 * Steepのメモリ使用量を減らすのを見ていたけど何もわからない * とりあえずEnvironmentを作るだけでmemory_profilerを取っていた ```profile.rb require 'rbs' require 'memory_profiler' environment = nil report = MemoryProfiler.report do loader = RBS::EnvironmentLoader.new loader.add(path: Pathname('sig')) config_path = RBS::Collection::Config.find_config_path || RBS::Collection::Config::PATH lock_path = RBS::Collection::Config.to_lockfile_path(config_path) lock = RBS::Collection::Config::Lockfile.from_lockfile(lockfile_path: lock_path, data: YAML.load_file(lock_path.to_s)) loader.add_collection(lock) environment = RBS::Environment.from_loader(loader).resolve_type_names end report.pretty_print ``` ```result Total allocated: 568377850 bytes (6011087 objects) Total retained: 171947815 bytes (1986393 objects) allocated memory by gem ----------------------------------- 565258525 rbs-3.1.0 1263732 pathname 1069848 set 386316 psych-3.3.4 333533 rubygems 56712 other 8624 specifications 480 bundler 80 singleton allocated memory by file ----------------------------------- 297728486 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb 69141296 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb 61920872 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb 45679184 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb 37211296 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb 18631600 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb 16092544 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb 11826049 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb 3335504 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/resolver/type_name_resolver.rb 3091784 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment/use_map.rb 1263732 /usr/local/lib/ruby/3.1.0/pathname.rb 1069848 /usr/local/lib/ruby/3.1.0/set.rb 250880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/type_param.rb 213877 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/file_finder.rb 160584 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/tree_builder.rb 94584 /usr/local/lib/ruby/3.1.0/rubygems/requirement.rb 89648 /usr/local/lib/ruby/3.1.0/rubygems/dependency.rb 85548 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych.rb 78542 /usr/local/lib/ruby/3.1.0/rubygems/specification.rb 74312 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/repository.rb 57240 /usr/local/lib/ruby/3.1.0/rubygems/version.rb 57168 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/visitors/to_ruby.rb 44697 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/config/lockfile.rb 37888 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/nodes/node.rb 35744 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/class_loader.rb 35360 <internal:dir> 21072 (eval) 9794 /usr/local/lib/ruby/3.1.0/rubygems.rb 9480 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/sources.rb 6216 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/sources/git.rb 6080 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/handlers/document_stream.rb 3245 /usr/local/lib/ruby/3.1.0/rubygems/basic_specification.rb 2096 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/scalar_scanner.rb 1864 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-core-1.0.0.gemspec 1704 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-table_syntax-1.0.0.gemspec 1304 /app/vendor/bundle/ruby/3.1.0/specifications/globalid-1.1.0.gemspec 1264 /app/vendor/bundle/ruby/3.1.0/specifications/dogstatsd-ruby-5.5.0.gemspec 1264 /app/vendor/bundle/ruby/3.1.0/specifications/hashie-5.0.0.gemspec 1224 /app/vendor/bundle/ruby/3.1.0/specifications/binding_of_caller-1.0.0.gemspec 1208 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/visitors/visitor.rb 480 /usr/local/lib/ruby/3.1.0/bundler/remote_specification.rb 480 /usr/local/lib/ruby/3.1.0/rubygems/platform.rb 448 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/config.rb 280 tmp/rbs_memory_profile.rb 80 /usr/local/lib/ruby/3.1.0/singleton.rb allocated memory by location ----------------------------------- 297649126 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 35719424 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 14225760 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 13780704 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:725 13269648 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:856 12997824 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb:30 12997824 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb:70 11538640 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb:144 11126640 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:315 10925376 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:26 9804144 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:73 9653448 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:30 8214544 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:843 7961824 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:630 6961696 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:29 6326560 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:842 6096720 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:573 5570496 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb:64 5295080 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:24 5193888 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:752 3821792 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:49 3534216 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:49 3534216 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:57 3094720 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb:29 3065096 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:633 2825992 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment/use_map.rb:56 2825960 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/resolver/type_name_resolver.rb:31 2649200 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:310 2649200 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:312 2334320 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:72 2183160 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:625 1793152 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:341 1768536 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:88 1515904 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:394 1506336 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:358 1451600 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:569 1236640 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:748 892536 /usr/local/lib/ruby/3.1.0/set.rb:246 841480 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:48 841480 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:56 839880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:862 744640 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:343 660570 /usr/local/lib/ruby/3.1.0/pathname.rb:449 658224 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:652 576880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:558 560400 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:45 559104 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:520 526336 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:502 492336 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:15 481536 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:511 allocated memory by class ----------------------------------- 261203776 Hash 77569776 RBS::Location 64945792 Array 41190700 String 29315728 MatchData 16429104 RBS::Types::Function 15923664 RBS::AST::Members::MethodDefinition 11157272 RBS::MethodType 9257200 RBS::Namespace 7112880 RBS::TypeName 6462320 Proc 6189440 RBS::AST::Members::MethodDefinition::Overload 5298560 RBS::Types::ClassInstance 2903200 RBS::Types::Optional 2473280 RBS::Types::Function::Param 1747800 RBS::Types::Bases::Any 963072 RBS::AST::Declarations::Class 800832 RBS::AST::Declarations::Module 734960 RBS::Environment::MultiEntry::D 592720 RBS::Types::Bases::Bool 524744 RBS::AST::Declarations::Constant 495560 RBS::AST::Comment 494912 File 465120 RBS::AST::Members::Include 344800 RBS::Environment::ClassEntry 342000 RBS::Types::Bases::Void 313440 RBS::Types::Union 291520 RBS::Environment::ConstantEntry 266240 RBS::AST::Declarations::Class::Super 218080 RBS::Types::Tuple 204064 RBS::AST::Members::AttrReader 163920 RBS::AST::Members::AttrAccessor 150240 Psych::Nodes::Scalar 143640 Pathname 143200 RBS::Environment::ModuleEntry 122880 RBS::Types::Block 122440 RBS::Types::Literal 117280 RBS::AST::Members::Extend 108000 RBS::AST::TypeParam 106160 RBS::Types::Alias 86952 RBS::AST::Members::Alias 79360 RBS::Buffer 79360 RBS::Environment::UseMap 72720 RBS::AST::Members::Private 65072 Thread::Backtrace 63400 Set 62040 RBS::Types::Bases::Nil 61280 Symbol 58400 RBS::Types::Variable 39520 RBS::Types::Record allocated objects by gem ----------------------------------- 5972662 rbs-3.1.0 24842 pathname 4441 rubygems 4419 set 3821 psych-3.3.4 754 other 134 specifications 12 bundler 2 singleton allocated objects by file ----------------------------------- 3007603 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb 883678 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb 622022 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb 507249 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb 467014 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb 155414 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb 154736 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb 75855 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment/use_map.rb 70657 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/resolver/type_name_resolver.rb 24842 /usr/local/lib/ruby/3.1.0/pathname.rb 19396 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb 4897 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/file_finder.rb 4419 /usr/local/lib/ruby/3.1.0/set.rb 2492 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/type_param.rb 1601 /usr/local/lib/ruby/3.1.0/rubygems/requirement.rb 1422 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych.rb 1328 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/tree_builder.rb 1211 /usr/local/lib/ruby/3.1.0/rubygems/specification.rb 1148 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/repository.rb 791 /usr/local/lib/ruby/3.1.0/rubygems/version.rb 640 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/visitors/to_ruby.rb 599 /usr/local/lib/ruby/3.1.0/rubygems/dependency.rb 560 <internal:dir> 380 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/config/lockfile.rb 264 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/nodes/node.rb 188 (eval) 177 /usr/local/lib/ruby/3.1.0/rubygems.rb 76 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/handlers/document_stream.rb 74 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/sources.rb 50 /usr/local/lib/ruby/3.1.0/rubygems/basic_specification.rb 41 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/scalar_scanner.rb 39 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/class_loader.rb 37 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/sources/git.rb 33 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-core-1.0.0.gemspec 29 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-table_syntax-1.0.0.gemspec 19 /app/vendor/bundle/ruby/3.1.0/specifications/globalid-1.1.0.gemspec 18 /app/vendor/bundle/ruby/3.1.0/specifications/dogstatsd-ruby-5.5.0.gemspec 18 /app/vendor/bundle/ruby/3.1.0/specifications/hashie-5.0.0.gemspec 17 /app/vendor/bundle/ruby/3.1.0/specifications/binding_of_caller-1.0.0.gemspec 12 /usr/local/lib/ruby/3.1.0/bundler/remote_specification.rb 12 /usr/local/lib/ruby/3.1.0/rubygems/platform.rb 11 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/visitors/visitor.rb 10 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/collection/config.rb 6 tmp/rbs_memory_profile.rb 2 /usr/local/lib/ruby/3.1.0/singleton.rb allocated objects by location ----------------------------------- 3005619 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 355644 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 343456 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 172383 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:29 130064 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:24 82028 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:725 79082 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:842 78986 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:843 78986 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:856 77368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb:29 77368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb:30 77368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb:64 77368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb:70 76556 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:630 76556 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:633 70649 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment/use_map.rb:56 70649 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/resolver/type_name_resolver.rb:31 66230 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:310 66230 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:312 66230 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:315 65032 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:26 58358 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:72 58358 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:73 57461 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:30 36748 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:358 36748 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:49 36290 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:569 36290 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:573 30916 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:748 30916 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:752 21037 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:48 21037 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:49 21037 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:56 21037 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:57 20745 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:862 17241 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:341 14576 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:394 13890 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb:144 12995 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:502 12995 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:625 12309 /usr/local/lib/ruby/3.1.0/pathname.rb:449 12200 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:45 11665 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:487 10527 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:485 10527 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:83 10527 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:88 10054 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:426 10032 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:509 9351 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:736 8342 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:546 allocated objects by class ----------------------------------- 1663506 Hash 1559041 Array 618069 String 408260 RBS::Location 231430 RBS::Namespace 177822 RBS::TypeName 174478 MatchData 157972 RBS::Types::Function 154962 RBS::MethodType 154736 RBS::AST::Members::MethodDefinition::Overload 153112 RBS::AST::Members::MethodDefinition 132464 RBS::Types::ClassInstance 80779 Proc 72580 RBS::Types::Optional 61832 RBS::Types::Function::Param 43695 RBS::Types::Bases::Any 18374 RBS::Environment::MultiEntry::D 14818 RBS::Types::Bases::Bool 12389 RBS::AST::Comment 10032 RBS::AST::Declarations::Class 8620 RBS::Environment::ClassEntry 8550 RBS::Types::Bases::Void 8342 RBS::AST::Declarations::Module 7836 RBS::Types::Union 7288 RBS::AST::Declarations::Constant 7288 RBS::Environment::ConstantEntry 6656 RBS::AST::Declarations::Class::Super 5814 RBS::AST::Members::Include 5452 RBS::Types::Tuple 3591 Pathname 3580 RBS::Environment::ModuleEntry 3072 RBS::Types::Block 3061 RBS::Types::Literal 2654 RBS::Types::Alias 2028 File 1984 RBS::Buffer 1984 RBS::Environment::UseMap 1962 RBS::AST::Members::AttrReader 1818 RBS::AST::Members::Private 1585 Set 1576 RBS::AST::Members::AttrAccessor 1551 RBS::Types::Bases::Nil 1532 Symbol 1466 RBS::AST::Members::Extend 1460 RBS::Types::Variable 1350 RBS::AST::TypeParam 1252 Psych::Nodes::Scalar 988 RBS::AST::Members::Alias 988 RBS::Types::Record 653 RBS::Types::Interface retained memory by gem ----------------------------------- 171703963 rbs-3.1.0 217351 pathname 19927 rubygems 5624 specifications 678 psych-3.3.4 192 set 80 singleton retained memory by file ----------------------------------- 115021810 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb 18148328 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb 16751456 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb 10063057 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb 5579536 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb 3094720 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb 1619216 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb 1388840 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb 217351 /usr/local/lib/ruby/3.1.0/pathname.rb 36000 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/type_param.rb 9494 /usr/local/lib/ruby/3.1.0/rubygems/specification.rb 6120 /usr/local/lib/ruby/3.1.0/rubygems/requirement.rb 2936 /usr/local/lib/ruby/3.1.0/rubygems/version.rb 1377 /usr/local/lib/ruby/3.1.0/rubygems/basic_specification.rb 1024 /app/vendor/bundle/ruby/3.1.0/specifications/dogstatsd-ruby-5.5.0.gemspec 984 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-core-1.0.0.gemspec 984 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-table_syntax-1.0.0.gemspec 944 /app/vendor/bundle/ruby/3.1.0/specifications/hashie-5.0.0.gemspec 864 /app/vendor/bundle/ruby/3.1.0/specifications/binding_of_caller-1.0.0.gemspec 824 /app/vendor/bundle/ruby/3.1.0/specifications/globalid-1.1.0.gemspec 440 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/visitors/visitor.rb 424 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/repository.rb 384 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/resolver/type_name_resolver.rb 238 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych.rb 192 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment/use_map.rb 192 /usr/local/lib/ruby/3.1.0/set.rb 80 /usr/local/lib/ruby/3.1.0/singleton.rb retained memory by location ----------------------------------- 115021810 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 10062464 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb:144 8214544 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:843 7961824 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:630 5554224 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb:64 3094720 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb:29 3065096 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:633 2649200 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:310 2649200 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:312 1451600 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:569 1244336 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:24 1236640 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:748 1013960 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:72 839880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:862 576880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:558 481536 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:511 467936 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:521 400416 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:548 374880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:48 374880 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:56 374040 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:736 367480 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:49 280200 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:45 262368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:602 235208 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:870 232560 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:699 229472 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:149 217047 /usr/local/lib/ruby/3.1.0/pathname.rb:449 201080 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:426 172592 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:341 171136 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:358 169352 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:649 166840 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:551 156720 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:648 145760 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:394 133120 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:515 133120 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:517 116280 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:701 114784 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:152 110304 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:424 109040 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:423 104776 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:500 104464 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:462 102024 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:656 81952 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:645 79360 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:431 71600 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:343 61440 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:1069 59816 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:147 58640 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:707 retained memory by class ----------------------------------- 77568720 RBS::Location 29467376 Array 18209961 String 8214544 RBS::Types::Function 7961824 RBS::AST::Members::MethodDefinition 7016552 Hash 5570496 RBS::MethodType 3094720 RBS::AST::Members::MethodDefinition::Overload 2649200 RBS::Types::ClassInstance 1747800 RBS::Types::Bases::Any 1559080 RBS::TypeName 1451600 RBS::Types::Optional 1236640 RBS::Types::Function::Param 1162760 RBS::Namespace 592720 RBS::Types::Bases::Bool 495560 RBS::AST::Comment 481536 RBS::AST::Declarations::Class 400416 RBS::AST::Declarations::Module 367480 RBS::Environment::MultiEntry::D 342000 RBS::Types::Bases::Void 262368 RBS::AST::Declarations::Constant 232560 RBS::AST::Members::Include 172400 RBS::Environment::ClassEntry 156720 RBS::Types::Union 145760 RBS::Environment::ConstantEntry 133120 RBS::AST::Declarations::Class::Super 122000 RBS::Types::Literal 109040 RBS::Types::Tuple 102024 RBS::AST::Members::AttrReader 86952 RBS::AST::Members::Alias 81952 RBS::AST::Members::AttrAccessor 79360 RBS::Buffer 72720 RBS::AST::Members::Private 71600 RBS::Environment::ModuleEntry 62040 RBS::Types::Bases::Nil 61440 RBS::Types::Block 61280 Symbol 58640 RBS::AST::Members::Extend 58400 RBS::Types::Variable 53080 RBS::Types::Alias 36000 RBS::AST::TypeParam 24200 RBS::Types::Bases::Self 19760 RBS::Types::Record 13040 RBS::Types::Interface 9440 RBS::AST::Members::Public 9416 RBS::AST::Declarations::TypeAlias 6720 RBS::AST::Annotation 6520 RBS::Types::Bases::Instance 5904 RBS::Types::Proc 5880 RBS::Types::Bases::Bottom retained objects by gem ----------------------------------- 1983951 rbs-3.1.0 1988 pathname 387 rubygems 59 specifications 5 psych-3.3.4 2 singleton 1 set retained objects by file ----------------------------------- 1184459 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb 320037 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb 243148 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb 77594 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb 77368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb 40210 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb 34721 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb 5958 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb 1988 /usr/local/lib/ruby/3.1.0/pathname.rb 450 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/type_param.rb 153 /usr/local/lib/ruby/3.1.0/rubygems/requirement.rb 147 /usr/local/lib/ruby/3.1.0/rubygems/specification.rb 67 /usr/local/lib/ruby/3.1.0/rubygems/version.rb 20 /usr/local/lib/ruby/3.1.0/rubygems/basic_specification.rb 12 /app/vendor/bundle/ruby/3.1.0/specifications/dogstatsd-ruby-5.5.0.gemspec 11 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-core-1.0.0.gemspec 11 /app/vendor/bundle/ruby/3.1.0/specifications/rspec-parameterized-table_syntax-1.0.0.gemspec 10 /app/vendor/bundle/ruby/3.1.0/specifications/hashie-5.0.0.gemspec 8 /app/vendor/bundle/ruby/3.1.0/specifications/binding_of_caller-1.0.0.gemspec 7 /app/vendor/bundle/ruby/3.1.0/specifications/globalid-1.1.0.gemspec 3 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych/visitors/visitor.rb 3 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/repository.rb 2 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych.rb 2 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/resolver/type_name_resolver.rb 2 /usr/local/lib/ruby/3.1.0/singleton.rb 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment/use_map.rb 1 /usr/local/lib/ruby/3.1.0/set.rb retained objects by location ----------------------------------- 1184459 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 78986 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:843 77368 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/ast/members.rb:29 77142 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/method_type.rb:64 76556 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:630 76556 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:633 66230 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:310 66230 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:312 36290 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:569 30916 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:748 30838 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:24 25349 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:72 20745 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:862 9372 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/namespace.rb:48 9372 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:56 9351 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:736 9187 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:49 6100 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:45 5952 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb:144 5027 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:426 5016 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:511 5016 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:521 4311 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:341 4179 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:358 4171 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:548 4171 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:551 4171 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:558 3918 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:648 3918 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:649 3644 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:394 3644 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:602 3328 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:515 3328 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:517 2907 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:699 2907 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:701 2726 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:423 2726 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:424 1984 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:431 1984 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:462 1982 /usr/local/lib/ruby/3.1.0/pathname.rb:449 1790 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:343 1536 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:1069 1377 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:870 1327 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:350 1327 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:352 981 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:656 788 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:645 733 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:707 733 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment.rb:709 494 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/types.rb:499 retained objects by class ----------------------------------- 715437 Array 408249 RBS::Location 158492 Hash 78986 RBS::Types::Function 77368 RBS::AST::Members::MethodDefinition::Overload 77368 RBS::MethodType 76556 RBS::AST::Members::MethodDefinition 66230 RBS::Types::ClassInstance 47247 String 43695 RBS::Types::Bases::Any 38977 RBS::TypeName 36290 RBS::Types::Optional 30916 RBS::Types::Function::Param 29069 RBS::Namespace 14818 RBS::Types::Bases::Bool 12389 RBS::AST::Comment 9187 RBS::Environment::MultiEntry::D 8550 RBS::Types::Bases::Void 5016 RBS::AST::Declarations::Class 4310 RBS::Environment::ClassEntry 4171 RBS::AST::Declarations::Module 3918 RBS::Types::Union 3644 RBS::AST::Declarations::Constant 3644 RBS::Environment::ConstantEntry 3328 RBS::AST::Declarations::Class::Super 3050 RBS::Types::Literal 2907 RBS::AST::Members::Include 2726 RBS::Types::Tuple 1984 RBS::Buffer 1818 RBS::AST::Members::Private 1790 RBS::Environment::ModuleEntry 1551 RBS::Types::Bases::Nil 1536 RBS::Types::Block 1532 Symbol 1460 RBS::Types::Variable 1327 RBS::Types::Alias 988 RBS::AST::Members::Alias 981 RBS::AST::Members::AttrReader 788 RBS::AST::Members::AttrAccessor 733 RBS::AST::Members::Extend 605 RBS::Types::Bases::Self 494 RBS::Types::Record 450 RBS::AST::TypeParam 326 RBS::Types::Interface 236 RBS::AST::Members::Public 168 RBS::AST::Annotation 163 RBS::Types::Bases::Instance 147 RBS::Types::Bases::Bottom 107 RBS::AST::Declarations::TypeAlias 107 RBS::Environment::TypeAliasEntry Allocated String Report ----------------------------------- 67533 "A" 33766 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 33766 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 52768 "I" 26386 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 26382 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 46743 "S" 23371 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 23371 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 23522 "T" 11761 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 11761 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 21998 "Integer" 21998 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 18740 "R" 9369 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 9369 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 2 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 18683 "C" 9341 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 9341 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 17498 "M" 8748 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 8748 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 2 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 15728 "String" 15728 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 13203 "Array" 13203 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 12890 "G" 6445 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 6445 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 12854 "E" 6431 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 6423 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 9354 "O" 4677 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 4677 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 9076 "J" 4538 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 4538 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 7864 "D" 3932 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 3932 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 7304 "P" 3652 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 3652 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 7280 "H" 3639 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 3639 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 2 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 6866 "TimeWithZone" 6865 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 5625 "U" 2812 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 2812 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 5495 "N" 2747 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 2747 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 5336 "B" 2667 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 2667 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 2 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 5102 "F" 2551 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 2551 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 4643 "ActiveRecord_Associations_CollectionProxy" 4642 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 3975 "V" 1987 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1987 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 3761 "_" 3727 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 34 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 2855 "GeneratedRelationMethods" 2854 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 2664 "L" 1332 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1332 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 2542 "ActiveRecord_Relation" 2541 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 2084 "ActiveRecord" 2083 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 2083 "_ActiveRecord_Relation" 2082 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1984 ".rbs" 1984 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/file_finder.rb:12 1860 "Hash" 1860 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1819 "GeneratedAttributeMethods" 1818 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1539 "Office" 1538 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1346 "Enumerable" 1346 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1233 "b" 606 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 606 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:15 21 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1190 "" 608 /usr/local/lib/ruby/3.1.0/pathname.rb:49 452 /usr/local/lib/ruby/3.1.0/pathname.rb:53 79 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb:144 50 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych.rb:457 1114 "s" 543 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 543 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:15 28 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1009 "ActiveSupport" 1008 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1000 "options" 994 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 6 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 943 "Symbol" 943 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 922 "W" 461 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 461 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 918 "name" 723 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 167 /app/vendor/bundle/ruby/3.1.0/gems/psych-3.3.4/lib/psych.rb:457 28 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 912 "ClassMethods" 912 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 899 "Concern" 898 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 866 "Journal" 865 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 865 "ActionView" 864 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 839 "Q" 419 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 419 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:13 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 837 "Rails" 836 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 822 "ActionDispatch" 821 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/type_name.rb:12 1 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 Retained String Report ----------------------------------- 246 ":nodoc:\n" 246 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 152 "nodoc:\n" 152 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 129 "" 79 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/environment_loader.rb:144 50 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 85 ":nodoc: all\n" 85 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 63 ":nodoc:\n:nodoc:\n" 63 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 48 "Builds the object from hash\n@param [Hash] attributes Model attributes in the form of hash\n@return [Object] Returns the model itself\n" 48 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 47 "annotate:rdoc:skip" 47 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "@see the `==` method\n@param [Object] Object to be compared\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Attribute mapping from ruby-style variable name to JSON key.\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Attribute type mapping.\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Calculates hash code according to all attributes.\n@return [Integer] Hash code\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Check to see if the all the properties in the model are valid\n@return true if the model is valid\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Checks equality by comparing each attribute.\n@param [Object] Object to be compared\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Deserializes the data based on type\n@param string type Data type\n@param string value Value to be deserialized\n@return [Object] Deserialized data\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Initializes the object\n@param [Hash] attributes Model attributes in the form of hash\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "List of attributes with nullable: true\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Outputs non-array value in the form of hash\nFor object, use to_hash. Otherwise, just return the value\n@param [Object] value Any valid value\n@return [Hash] Returns the value in the form of hash\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Returns all the JSON keys this model knows about\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Returns the object in the form of hash\n@return [Hash] Returns the object in the form of hash\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Returns the string representation of the object\n@return [String] String presentation of the object\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "Show invalid properties with the reasons. Usually used together with valid?\n@return Array for valid properties with the reasons\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 24 "to_body is an alias to to_hash (backward compatibility)\n@return [Hash] Returns the object in the form of hash\n" 24 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 20 "Builds the enum from string\n@param [String] The enum value in the form of the string\n@return [String] The enum value\n" 20 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 20 "Manual definition to make block optional\n" 20 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 20 "desc" 20 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 18 ":nodoc:\n:nodoc:\n:nodoc:\n" 18 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 13 ":stopdoc:\n" 13 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 12 "recognized_at" 12 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 11 "<!-- rdoc-file=ext/openssl/ossl_ssl.c -->\nDeprecated in OpenSSL 1.1.0.\n\n" 11 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 11 "asc" 11 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 11 "create" 11 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 11 "nodoc:\nAbstract representation of an index definition on a table. Instances of\nthis type are typically created and returned by methods in database\nadapters. e.g. ActiveRecord::ConnectionAdapters::MySQ" 11 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 11 "number" 11 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 10 "<!-- rdoc-file=process.c -->\nsee Process.clock_gettime\n\n" 10 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 10 "operational_updated_at" 10 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 9 "/sso" 9 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 9 ":nodoc:\nnodoc:\n" 9 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 9 "The Nth group of the last successful match. May be > 1.\n" 9 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 8 "0" 7 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 1 /usr/local/lib/ruby/3.1.0/rubygems/version.rb:229 8 "<!-- rdoc-file=ext/socket/constdefs.c -->\nDECnet protocol\n\n" 8 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 8 "<!-- rdoc-file=ext/socket/constdefs.c -->\nISO Open Systems Interconnection protocols\n\n" 8 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 8 "It is necessary to satisfy alias target.\nTODO: Define this method to correct place.\n" 8 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 8 "Note: It inherits unnamed class, but omitted\n" 8 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 8 "created_at" 8 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 8 "frozen_string_literal: true\n" 8 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 7 "@abstract\n" 7 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 7 "JSON 形式でダンプするログスキーマのバージョン\n" 7 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 7 "Remove the fake types for Gem::Version\nif the real types are available.\n" 7 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 7 "nodoc:\nnodoc:\n" 7 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 6 "<!-- rdoc-file=ext/socket/constdefs.c -->\nPARC Universal Packet protocol\n\n" 6 /app/vendor/bundle/ruby/3.1.0/gems/rbs-3.1.0/lib/rbs/parser_aux.rb:17 ``` ## mame * 転職活動! * 退職活動! * TypeProfまわり全然できていない…… * YARPバックエンドにしようかなと少しだけ手を付けている ```rbs= A::B::C A::C ``` * `B` がなくなったときに `C` の参照が変わることがある。 * これはSteepでも使うから必要