Table of Contents - Documentation for Ruby 3.5
Pages
- COPYING
- COPYING.ja
- LEGAL
- NEWS
-
NEWS-1.8.7
- NEWS for Ruby 1.8.7
- Changes since the 1.8.6 release
- Configuration changes
- Global constants
- Library updates (outstanding ones only)
- Interpreter Implementation
- Compatibility issues (excluding feature bug fixes)
- Changes since the 1.8.5 release
- New platforms/build tools support
- Global constants
- Library updates (outstanding ones only)
- Compatibility issues (excluding feature bug fixes)
- NEWS-1.9.1
- NEWS-1.9.2
- NEWS-1.9.3
- NEWS-2.0.0
-
NEWS-2.1.0
- NEWS for Ruby 2.1.0
- Changes since the 2.0.0 release
- Language changes
- Core classes updates (outstanding ones only)
- Core classes compatibility issues (excluding feature bug fixes)
- Stdlib updates (outstanding ones only)
- Stdlib compatibility issues (excluding feature bug fixes)
- Built-in global variables compatibility issues
- C API updates
-
NEWS-2.2.0
- NEWS for Ruby 2.2.0
- Changes since the 2.1.0 release
- Language changes
- Core classes updates (outstanding ones only)
- Core classes compatibility issues (excluding feature bug fixes)
- Stdlib updates (outstanding ones only)
- Stdlib compatibility issues (excluding feature bug fixes)
- Built-in global variables compatibility issues
- C API updates
- Build system updates
- Implementation changes
-
NEWS-2.3.0
- NEWS for Ruby 2.3.0
- Changes since the 2.2.0 release
- Language changes
- Core classes updates (outstanding ones only)
- Core classes compatibility issues (excluding feature bug fixes)
- Stdlib updates (outstanding ones only)
- Stdlib compatibility issues (excluding feature bug fixes)
- Built-in global variables compatibility issues
- C API updates
- Supported platform changes
- Implementation improvements
-
NEWS-2.4.0
- NEWS for Ruby 2.4.0
- Changes since the 2.3.0 release
- Language changes
- Core classes updates (outstanding ones only)
- Stdlib updates (outstanding ones only)
- Compatibility issues (excluding feature bug fixes)
- Stdlib compatibility issues (excluding feature bug fixes)
- C API updates
- Supported platform changes
- Implementation improvements
- Miscellaneous changes
-
NEWS-2.5.0
- NEWS for Ruby 2.5.0
- Changes since the 2.4.0 release
- Language changes
- Core classes updates (outstanding ones only)
- Stdlib updates (outstanding ones only)
- Compatibility issues (excluding feature bug fixes)
- Stdlib compatibility issues (excluding feature bug fixes)
- Supported platform changes
- Implementation improvements
- Miscellaneous changes
-
NEWS-2.6.0
- NEWS for Ruby 2.6.0
- Changes since the 2.5.0 release
- Language changes
- Core classes updates (outstanding ones only)
- Stdlib updates (outstanding ones only)
- Compatibility issues (excluding feature bug fixes)
- Stdlib compatibility issues (excluding feature bug fixes)
- Implementation improvements
- Miscellaneous changes
-
NEWS-2.7.0
- NEWS for Ruby 2.7.0
- Changes since the 2.6.0 release
- Language changes
- Pattern matching
- The spec of keyword arguments is changed towards 3.0
- Numbered parameters
- proc/lambda without block is deprecated
- Other miscellaneous changes
- Command line options
- Warning option
- Core classes updates (outstanding ones only)
- Stdlib updates (outstanding ones only)
- Compatibility issues (excluding feature bug fixes)
- Stdlib compatibility issues (excluding feature bug fixes)
- C API updates
- Implementation improvements
- Miscellaneous changes
- NEWS-3.0.0
-
NEWS-3.1.0
- NEWS for Ruby 3.1.0
- Language changes
- Command line options
- Core classes updates
- Stdlib updates
- Compatibility issues
- Stdlib compatibility issues
- C API updates
- Implementation improvements
- JIT
- MJIT
- YJIT: New experimental in-process JIT compiler
- Static analysis
- RBS
- TypeProf
- Debugger
- error_highlight
- IRB Autocomplete and Document Display
- Miscellaneous changes
-
NEWS-3.2.0
- NEWS for Ruby 3.2.0
- Language changes
- Core classes updates
- Stdlib updates
- Supported platforms
- Compatibility issues
- Removed constants
- Removed methods
- Source code incompatibility of extension libraries
- Error printer
- Constant lookup when defining a class/module
- Stdlib compatibility issues
- C API updates
- Updated C APIs
- Added C APIs
- Removed C APIs
- Implementation improvements
- JIT
- YJIT
- MJIT
- NEWS-3.3.0
- NEWS-3.4.0
- README.ja
- README
- bsearch
- bug_triaging
- case_mapping
- character_selectors
- command_injection
- building_ruby
- contributing
-
documentation_guide
- Documentation Guide
- Generating documentation
- Goal
- General Guidelines
- Characters
- RDoc
- Output from
irb
- Headings
- Blank Lines
- Method Names
- Embedded Code and Commands
- Auto-Linking
- Explicit Links
rdoc-ref
Scheme- URL-Based Link
- Variable Names
- HTML Tags
- Tables
- Documenting Classes and Modules
- Synopsis
- Common Uses
- What’s Here Summary
- Documenting Methods
- General Structure
- Calling Sequence (for methods written in C)
- Synopsis
- In-Brief Examples
- Details and Examples
- Argument Description (if necessary)
- Corner Cases and Exceptions
- Related Methods (optional)
- Methods Accepting Multiple Argument Types
- glossary
- making_changes_to_ruby
- making_changes_to_stdlibs
- reporting_issues
- testing_ruby
- calendars
- dig_methods
- distribution
- dtrace_probes
-
encodings
- Encodings
- The Basics
- The Encoding Class
- Encoding Objects
- Names and Aliases
- Default Encodings
- Compatible Encodings
- String Encoding
- Symbol and Regexp Encodings
- Filesystem Encoding
- Locale Encoding
- Stream Encodings
- External Encoding
- Internal Encoding
- Script Encoding
- Transcoding
- Transcoding a String
- Transcoding a Stream
- Encoding Options
-
exceptions
- Exceptions
- Raised Exceptions
- Unrescued Exceptions
- Rescued Exceptions
- Begin Clause
- Rescue Clauses
- Rescued Exceptions
- Multiple Rescue Clauses
- Capturing the Rescued Exception
- Global Variables
- Cause
- Else Clause
- Ensure Clause
- End Statement
- Begin-Less Exception Handlers
- Re-Raising an Exception
- Retrying
- Raising an Exception
- Custom Exceptions
- Messages
- Backtraces
-
extension.ja
- Rubyの拡張ライブラリの作り方
- 基礎知識
- データタイプ
- VALUEのデータタイプをチェックする
- VALUEをCのデータに変換する
- CのデータをVALUEに変換する
- Rubyのデータを操作する
- 文字列に対する関数
- 配列に対する関数
- Rubyの機能を使う
- Rubyに機能を追加する
- クラス/モジュール定義
- メソッド/特異メソッド定義
- 定数定義
- Rubyの機能をCから呼び出す
- Rubyのプログラムをevalする
- IDまたはシンボル
- CからRubyのメソッドを呼び出す
- 変数/定数を参照/更新する
- RubyとCとの情報共有
- Cから参照できるRubyの定数
- CとRubyで共有される大域変数
- CのデータをRubyオブジェクトにする
- 構造体からオブジェクトへ
- オブジェクトから構造体へ
- 例: dbmの拡張ライブラリの作成
- ディレクトリを作る
- 設計する
- Cコードを書く
- extconf.rbを用意する
- dependを用意する
- Makefileを生成する
- makeする
- デバッグ
- できあがり
- Appendix A. Rubyのソースコードの分類
- Rubyのヘッダファイル
- Ruby言語のコア
- Rubyの構文解析器
- Rubyの評価器 (通称YARV)
- 正規表現エンジン (鬼雲)
- ユーティリティ関数
- Rubyコマンドの実装
- クラスライブラリ
- 多言語化
- gorubyコマンドの実装
- Appendix B. 拡張用関数リファレンス
- 型
- 変数・定数
- Cデータのカプセル化
- 型チェック
- 型変換
- クラス/モジュール定義
- 大域変数定義
- 定数
- メソッド定義
- Rubyメソッド呼び出し
- インスタンス変数
- 制御構造
- 例外・エラー
- Rubyの初期化・実行
- インタプリタのイベントのフック
- メモリ使用量
- 互換性のためのマクロ
- Appendix C. extconf.rbで使える関数たち
- Appendix D. 世代別GC
- Appendix E. Ractor サポート
-
extension
- Creating extension libraries for Ruby
- Basic Knowledge
- Ruby data types
- Check type of the VALUE data
- Convert VALUE into C data
- Convert C data into VALUE
- Manipulating Ruby object
- String functions
- Array functions
- Extending Ruby with C
- Adding new features to Ruby
- Class and Module Definition
- Method and singleton method definition
- Constant definition
- Use Ruby features from C
- Evaluate Ruby programs in a string
- ID or Symbol
- Invoke Ruby method from C
- Accessing the variables and constants
- Information sharing between Ruby and C
- Ruby constants that can be accessed from C
- Global variables shared between C and Ruby
- Encapsulate C data into a Ruby object
- C struct to Ruby object
- Declaratively marking/compacting struct references
- Ruby object to C struct
- Example - Creating the dbm Extension
- Make the directory
- Design the Library
- Write the C Code
- Prepare extconf.rb
- Prepare depend (Optional)
- Generate Makefile
- Run make
- Debug
- Done! Now you have the extension library
- Appendix A. Ruby header and source files overview
- Ruby header files
- Ruby language core
- Ruby syntax parser
- Ruby evaluator (a.k.a. YARV)
- Regular expression engine (Onigumo)
- Utility functions
- Ruby interpreter implementation
- Class library
- Multilingualization
- goruby interpreter implementation
- Appendix B. Ruby extension API reference
- Types
- Variables and constants
- C pointer wrapping
- Checking VALUE types
- VALUE type conversion
- Defining classes and modules
- Defining global variables
- Constant definition
- Method definition
- Invoking Ruby method
- Instance variables
- Control structure
- Exceptions and errors
- Threading
- Input/Output (IO) on a single file descriptor
- I/O multiplexing
- Initialize and start the interpreter
- Hooks for the interpreter events
- Memory usage
- Macros for compatibility
- Defining backward compatible macros for keyword argument functions
- Appendix C. Functions available for use in extconf.rb
- Appendix D. Generational GC
- Incompatibility
- Write barriers
- Don’t touch pointers directly
- Consider whether to insert write barriers
- Combine with built-in types
- Insert write barriers
- Appendix E. RB_GC_GUARD to protect from premature GC
- Appendix F. Ractor support
- fiber
-
format_specifications
- Format Specifications
- Type Specifiers
- Integer Type Specifiers
- Floating-Point Type Specifiers
- Other Type Specifiers
- Flags
' '
Flag'#'
Flag'+'
Flag'-'
Flag'0'
Flag'n$'
Flag- Width Specifier
- Precision Specifier
- Type Specifier Details and Examples
- Specifiers
a
andA
- Specifiers
b
andB
- Specifier
c
- Specifier
d
- Specifiers
e
andE
- Specifier
f
- Specifiers
g
andG
- Specifier
o
- Specifier
p
- Specifier
s
- Specifiers
x
andX
- Specifier
%
- Reference by Name
- globals