Skip to content

Instantly share code, notes, and snippets.

@furugomu
Last active February 29, 2024 08:03
Show Gist options
  • Save furugomu/49f2ec7f1f168e99a7cd0f3d57dd8d67 to your computer and use it in GitHub Desktop.
Save furugomu/49f2ec7f1f168e99a7cd0f3d57dd8d67 to your computer and use it in GitHub Desktop.
rbs

RBS

インストール

bundle add rbs rbs_rails steep

こうなる

group :development, :test do
  gem 'rbs', '~> 3.4', require: false
  gem 'rbs_rails', '~> 0.12.0', require: false
  gem 'steep', '~> 1.6'
end

準備

.gitignoreに追加

/.gem_rbs_collection

Steepfile を作る。 steep init しても良いがあまり参考にならない。

target :lib do
  signature 'sig'

  check 'app'
end

rbs_rails

rails g rbs_rails:install

型宣言を生成する

# gemのやつ
rbs collection init
rbs collection install
# Railsが自動生成する分 (ApplicationRecordなど)
rbs prototype rbi --out-dir=sig/ --base-dir=app/ app/
# モデルなど
rails rbs_rails:all

チェック

steep check

Steep の VSCode 拡張を入れると良い。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment