種類
- インスタンスメソッド (67)
- 特異メソッド (33)
- ライブラリ (22)
- クラス (11)
ライブラリ
- pp (33)
- prettyprint (78)
クラス
- Object (11)
- PP (22)
- PrettyPrint (67)
キーワード
- PrettyPrint (11)
-
comma
_ breakable (11) - first? (1)
- group (11)
- new (22)
- pp (11)
-
pretty
_ print (11) - prettyprint (11)
- seplist (11)
-
singleline
_ format (11)
検索結果
先頭5件
-
PrettyPrint
# breakable(sep = & # 39; & # 39;) -> () (24202.0) -
「必要ならここで改行出来る」ということを自身に通知します。 もしその位置で改行されなければ、width カラムのテキスト sep が出力の際にそこに挿入されます。
...ト sep が出力の際にそこに挿入されます。
@param sep 改行が起きなかった場合に挿入されるテキストを文字列で指定します。
@param width テキスト sep は width カラムであると仮定されます。指定されなければ、
sep.length......が利用されます。例えば sep が多バイト文字の際に指定する必要があるかも知れません。... -
PrettyPrint
# breakable(sep , width = sep . length) -> () (24202.0) -
「必要ならここで改行出来る」ということを自身に通知します。 もしその位置で改行されなければ、width カラムのテキスト sep が出力の際にそこに挿入されます。
...ト sep が出力の際にそこに挿入されます。
@param sep 改行が起きなかった場合に挿入されるテキストを文字列で指定します。
@param width テキスト sep は width カラムであると仮定されます。指定されなければ、
sep.length......が利用されます。例えば sep が多バイト文字の際に指定する必要があるかも知れません。... -
PP
# comma _ breakable -> () (12223.0) -
以下と等価な働きをするもので簡便のために用意されています。 //emlist[][ruby]{ text ',' breakable //}
...以下と等価な働きをするもので簡便のために用意されています。
//emlist[][ruby]{
text ','
breakable
//}
@see PrettyPrint#text, PrettyPrint#breakable... -
PP
# seplist(list , sep = lambda { comma _ breakable } , iter _ method = :each) {|e| . . . } -> () (6320.0) -
リストの各要素を何かで区切りつつ、自身に追加していくために使われます。
...す。
list を iter_method によってイテレートし、各要素を引数としてブロックを実行します。
また、それぞれのブロックの実行の合間に sep が呼ばれます。
つまり、以下のふたつは同値です。
//emlist[][ruby]{
q.seplist([1,2,3]) {|v|......q.pp v }
q.pp 1
q.comma_breakable
q.pp 2
q.comma_breakable
q.pp 3
//}
@param list 自身に追加したい配列を与えます。iter_method を適切に指定すれば、
Enumerable でなくても構いません。
@param sep 区切りを自身に追加するブロックを与え......ます。list がイテレートされないなら、
sep は決して呼ばれません。
@param iter_method list をイテレートするメソッドをシンボルで与えます。
@see PP#comma_breakable... -
PrettyPrint
. new(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n") -> PrettyPrint (6216.0) -
pretty printing のためのバッファを生成します。 output は出力先です。output は << メソッドを持っていなければなりません。 << メソッドには * PrettyPrint#text の第1引数 obj * PrettyPrint#breakable の第1引数 sep * PrettyPrint.new の第3引数 newline * PrettyPrint.new に与えたブロックを評価した結果 のどれかひとつが引数として与えられます。
...retty printing のためのバッファを生成します。
output は出力先です。output は << メソッドを持っていなければなりません。
<< メソッドには
* PrettyPrint#text の第1引数 obj
* PrettyPrint#breakable の第1引数 sep
* PrettyPrint.new の第3引数 new......line
* PrettyPrint.new に与えたブロックを評価した結果
のどれかひとつが引数として与えられます。
ブロックが指定された場合は、空白を生成するために使われます。ブロックは、生成したい空白の幅を表す整数を引数として......tput は << メソッドを持っていなければなりません。
@param maxwidth 行の最大幅を指定します。ただし、改行できないものが渡された場合は、実際の出力幅は maxwidth を越えることがあります。
@param newline 改行に使われます。... -
PrettyPrint
. new(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n") {|width| . . . } -> PrettyPrint (6216.0) -
pretty printing のためのバッファを生成します。 output は出力先です。output は << メソッドを持っていなければなりません。 << メソッドには * PrettyPrint#text の第1引数 obj * PrettyPrint#breakable の第1引数 sep * PrettyPrint.new の第3引数 newline * PrettyPrint.new に与えたブロックを評価した結果 のどれかひとつが引数として与えられます。
...retty printing のためのバッファを生成します。
output は出力先です。output は << メソッドを持っていなければなりません。
<< メソッドには
* PrettyPrint#text の第1引数 obj
* PrettyPrint#breakable の第1引数 sep
* PrettyPrint.new の第3引数 new......line
* PrettyPrint.new に与えたブロックを評価した結果
のどれかひとつが引数として与えられます。
ブロックが指定された場合は、空白を生成するために使われます。ブロックは、生成したい空白の幅を表す整数を引数として......tput は << メソッドを持っていなければなりません。
@param maxwidth 行の最大幅を指定します。ただし、改行できないものが渡された場合は、実際の出力幅は maxwidth を越えることがあります。
@param newline 改行に使われます。... -
Object
# pretty _ print(pp) -> () (6106.0) -
PP.pp や Kernel.#pp がオブジェクトの内容を出力するときに 呼ばれるメソッドです。PP オブジェクト pp を引数として呼ばれます。
...Kernel.#pp がオブジェクトの内容を出力するときに
呼ばれるメソッドです。PP オブジェクト pp を引数として呼ばれます。
あるクラスの pp の出力をカスタマイズしたい場合は、このメソッドを再定義します。
そのとき pretty_p......pretty_print メソッドを定義しています。
@param pp PP オブジェクトです。
//emlist[][ruby]{
require 'pp'
class Array
def pretty_print(q)
q.group(1, '[', ']') {
q.seplist(self) {|v|
q.pp v
}
}
end
end
//}
@see Object#pretty_print_cycle, Object#......inspect, PrettyPrint#text, PrettyPrint#group, PrettyPrint#breakable......pretty_print メソッドを定義しています。
@param pp PP オブジェクトです。
//emlist[][ruby]{
class Array
def pretty_print(q)
q.group(1, '[', ']') {
q.seplist(self) {|v|
q.pp v
}
}
end
end
//}
@see Object#pretty_print_cycle, Object#inspect, Prett......yPrint#text, PrettyPrint#group, PrettyPrint#breakable... -
PrettyPrint
. singleline _ format(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n" , genspace = lambda{|n| & # 39; & # 39; * n}) {|pp| . . . } -> object (6106.0) -
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。 PrettyPrint.format に似ていますが、改行しません。
...PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。
PrettyPrint.format に似ていますが、改行しません。
引数 maxwidth, newline と genspace は無視されます。ブロック中の breakable の実行は、
改行せずに text......の実行であるかのように扱います。
@param output 出力先を指定します。output は << メソッドを持っていなければなりません。
@param maxwidth 無視されます。
@param newline 無視されます。
@param genspace 無視されます。... -
prettyprint (6030.0)
-
pretty printing アルゴリズムのためのライブラリです。
...pretty printing アルゴリズムのためのライブラリです。
=== 使い方
pretty printing アルゴリズムは読みやすいインデントと改行を決定するためのアルゴリズムです。
インデントと改行はユーザによって与えられたツリー構造から......ーを作成する必要があります。
* PrettyPrint.new でバッファを生成します。このとき、バッファの幅と改行文字を指定します。
* PrettyPrint#text を使って、文字列を適宜 挿入します。
* PrettyPrint#group を使って子ノードをつくり......PrettyPrint#breakable を使って改行しても良い場所を指定します。
同じノード内で呼ばれた breakable は、改行するならば全て同時に改行します。
//emlist[][ruby]{
require 'prettyprint'
p2 = PrettyPrint.new('', 10)
s = 'hello'
p2.text(s)
p2.group(p2.inden... -
PrettyPrint (6006.0)
-
pretty printing アルゴリズムのためのクラスです。 改行の位置を探し、きれいなインデントを施します。
...pretty printing アルゴリズムのためのクラスです。
改行の位置を探し、きれいなインデントを施します。
デフォルトでは、このクラスは文字列を扱います。
また、文字1バイトが出力幅の中で1カラムを占めると仮定していま......うでない場合にも利用できます。
* PrettyPrint.new: 出力バッファ、空白の生成をするブロックや改行オブジェクトを設定できます。
* PrettyPrint#text: 幅を設定できます。
* PrettyPrint#breakable
ですので、このクラスは以下のような...