るりまサーチ (Ruby 3.4)

最速Rubyリファレンスマニュアル検索!
7件ヒット [1-7件を表示] (0.045秒)
トップページ > バージョン:3.4[x] > クエリ:Object[x] > クエリ:cycle[x]

別のキーワード

  1. _builtin each_object
  2. objectspace each_object
  3. object then
  4. object send
  5. object to_enum

ライブラリ

クラス

モジュール

検索結果

Object#pretty_print_cycle(pp) -> () (81388.0)

プリティプリント時にオブジェクトの循環参照が検出された場合、 [m:Object#pretty_print] の代わりに呼ばれるメソッドです。

プリティプリント時にオブジェクトの循環参照が検出された場合、
[m:Object#pretty_print] の代わりに呼ばれるメソッドです。

あるクラスの pp の出力をカスタマイズしたい場合は、このメソッドも再定義する必要があります。

- **param** `pp` -- [c:PP] オブジェクトです。

```ruby
class Array
def pretty_print_cycle(q)
q.text(empty? ? '[]' : '[...]')
end
end
```

- **SEE** [m:Object#pretty_print]

Object#pretty_print(pp) -> () (63055.0)

[m:PP.pp] や [m:Kernel?.pp] がオブジェクトの内容を出力するときに呼ばれるメソッドです。[c:PP] オブジェクト pp を引数として呼ばれます。

[m:PP.pp] や [m:Kernel?.pp] がオブジェクトの内容を出力するときに呼ばれるメソッドです。[c:PP] オブジェクト pp を引数として呼ばれます。

あるクラスの pp の出力をカスタマイズしたい場合は、このメソッドを再定義します。
そのとき pretty_print メソッドは指定された pp に対して表示したい自身の内容を追加していかなければいけません。いくつかの組み込みクラスについて、
[lib:pp] ライブラリはあらかじめ pretty_print メソッドを定義しています。

- **param** `pp` -- [c:PP] オブジェクトです。

``...

Enumerable#cycle(n=nil) {|obj| ... } -> object | nil (54646.0)

Enumerable オブジェクトの各要素を n 回 or 無限回(n=nil)繰り返しブロックを呼びだします。

Enumerable オブジェクトの各要素を n 回 or 無限回(n=nil)繰り返しブロックを呼びだします。

n に 0 もしくは負の値を渡した場合は何もしません。
繰り返しが最後まで終了した場合(つまりbreakなどで中断しなかった場合)
は nil を返します。
このメソッドは内部の配列に各要素を保存しておくため、一度 Enumerable の終端に到達した後に自分自身を変更してもこのメソッドの動作に影響を与えません。

```ruby title="例"
a = ["a", "b", "c"]
a.cycle {|x| puts x } # print, a, b, c, a,...

Enumerable#cycle(n=nil) -> Enumerator (54346.0)

Enumerable オブジェクトの各要素を n 回 or 無限回(n=nil)繰り返しブロックを呼びだします。

Enumerable オブジェクトの各要素を n 回 or 無限回(n=nil)繰り返しブロックを呼びだします。

n に 0 もしくは負の値を渡した場合は何もしません。
繰り返しが最後まで終了した場合(つまりbreakなどで中断しなかった場合)
は nil を返します。
このメソッドは内部の配列に各要素を保存しておくため、一度 Enumerable の終端に到達した後に自分自身を変更してもこのメソッドの動作に影響を与えません。

```ruby title="例"
a = ["a", "b", "c"]
a.cycle {|x| puts x } # print, a, b, c, a,...

PP#pp(obj) -> () (103.0)

指定されたオブジェクト obj を [m:Object#pretty_print] を使って自身のバッファに追加します。

指定されたオブジェクト obj を [m:Object#pretty_print] を使って自身のバッファに追加します。

obj がすでに、現在のノードの親において出力されていた場合には、参照のループが存在しているので、[m:Object#pretty_print] の代わりに
[m:Object#pretty_print_cycle] が使われます。

- **param** `obj` -- 表示したいオブジェクトを指定します。

絞り込み条件を変える

PP.sharing_detection -> bool (97.0)

共有検出フラグを表すアクセサです。 デフォルトは false です。true である場合、 [m:PP.pp] は一度出力したオブジェクトを再び出力する時 [m:Object#pretty_print_cycle] を使います。

共有検出フラグを表すアクセサです。
デフォルトは false です。true である場合、
[m:PP.pp] は一度出力したオブジェクトを再び出力する時
[m:Object#pretty_print_cycle] を使います。

- **param** `boolean` -- 共有検出フラグを true か false で指定します。

```ruby
b = [1, 2, 3]
a = [b, b]

pp a # => [[1, 2, 3], [1, 2, 3]]

PP.sharing_detection = true
pp a ...

PP.sharing_detection=(boolean) (97.0)

共有検出フラグを表すアクセサです。 デフォルトは false です。true である場合、 [m:PP.pp] は一度出力したオブジェクトを再び出力する時 [m:Object#pretty_print_cycle] を使います。

共有検出フラグを表すアクセサです。
デフォルトは false です。true である場合、
[m:PP.pp] は一度出力したオブジェクトを再び出力する時
[m:Object#pretty_print_cycle] を使います。

- **param** `boolean` -- 共有検出フラグを true か false で指定します。

```ruby
b = [1, 2, 3]
a = [b, b]

pp a # => [[1, 2, 3], [1, 2, 3]]

PP.sharing_detection = true
pp a ...