Project

typeprof

0.43
There's a lot of open issues
TypeProf performs a type analysis of non-annotated Ruby code. It abstractly executes input Ruby code in a level of types instead of values, gathers what types are passed to and returned by methods, and prints the analysis result in RBS format, a standard type description format for Ruby 3.0.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

>= 3.6.0
 Project Readme

TypeProf

An experimental type-level Ruby interpreter for testing and understanding Ruby code.

Installation

Install via RubyGems.

$ gem install typeprof

Requirements

TypeProf supports Ruby 3.3 or later.

Quick start

  1. Install VSCode Ruby TypeProf extension: code --install-extension mame.ruby-typeprof

  2. Run typeprof --init in your project root to create typeprof.conf.jsonc file. Other options are available. See typeprof.conf.jsonc for details.

  3. Reopen your project in VSCode.

Development

  1. Git clone this repository: git clone https://github.com/ruby/typeprof.git
  2. Install VSCode Ruby TypeProf extension: code --install-extension mame.ruby-typeprof
  3. Open the repository in VSCode: code typeprof

Testing

$ bundle install
$ bundle exec rake test

More details

https://speakerdeck.com/mame/good-first-issues-of-typeprof

LICENSE

See LICENSE file.