るりまサーチ

最速Rubyリファレンスマニュアル検索!
36件ヒット [1-36件を表示] (0.028秒)
トップページ > クエリ:Array[x] > クエリ:class[x] > 種類:ライブラリ[x]

別のキーワード

  1. array fill
  2. array []
  3. array sample
  4. array count
  5. array slice

キーワード

検索結果

yaml (79.0)

構造化されたデータを表現するフォーマットであるYAML (YAML Ain't Markup Language) を扱うためのライブラリです。

...---
!ruby/sym :foo
EOS
# => :foo
//}

yaml では、Ruby 向けに以下のローカルタグを扱えます。

* !ruby/array: Array オブジェクト
* !ruby/class: Class オブジェクト
* !ruby/hash: Hash オブジェクト
* !ruby/module: Module オブジェクト
* !ruby/regexp: R...
...d(<<~EOS)
---
array
: !ruby/array [1, 2, 3]
hash: !ruby/hash {foo: 1, bar: 2}
regexp: !ruby/regexp /foo|bar/
range: !ruby/range 1..10
EOS
# => {"regexp"=>/foo|bar/, "hash"=>{"foo"=>1, "bar"=>2}, "array"=>[1, 2, 3], "range"=>1..10}
//}

これらは tag:ruby.yaml.org,2002:array のように...
...きます。

//emlist[例][ruby]{
require 'yaml'
p YAML.load(<<~EOS)
---
array
: !tag:ruby.yaml.org,2002:array [1, 2, 3]
hash: !tag:ruby.yaml.org,2002:hash {foo: 1, bar: 2}
EOS
# => {"hash"=>{"foo"=>1, "bar"=>2}, "array"=>[1, 2, 3]}
//}

自分で定義したクラスなどは !ruby/object:<...

rdoc/parser/c (61.0)

C 言語で記述されたソースコードから組み込みクラス/モジュールのドキュメン トを解析するためのサブライブラリです。

...用します。
rb_define_class や rb_define_method などで定義されたものに
対応する C 言語の関数のコメントを解析します。

例: Array#flatten の場合。rb_ary_flatten のコメントが解析されます。

/*
* Returns a new array that is a one-dimensional fl...
...attening of this
* array (recursively). That is, for every element that is an array,
* extract its elements into the new array.
*
* s = [ 1, 2, 3 ] #=> [1, 2, 3]
* t = [ 4, 5, 6, [7, 8] ] #=> [4, 5, 6, [7, 8]]
* a = [ s, t, 9, 10 ] #=> [[1, 2, 3], [4, 5,...
...ry_flatten_bang(ary);
return ary;
}

...

void
Init_Array()
{
...
rb_define_method(rb_cArray, "flatten", rb_ary_flatten, 0);

上記の例の場合、rb_ary_flatten 関数と Init_Array 関数は同じファイルに記
述されている必要があります。...

tsort (25.0)

tsort はトポロジカルソートと強連結成分に関するモジュールを提供します。

...rt はトポロジカルソートと強連結成分に関するモジュールを提供します。

=== Example

//emlist[][ruby]{
require 'tsort'

class
Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end

{1=>[2, 3], 2=...
...== より現実的な例

非常に単純な `make' に似たツールは以下のように実装できます。

//emlist[][ruby]{
require 'tsort'

class
Make
def initialize
@dep = {}
@dep.default = []
end

def rule(outputs, inputs=[], &block)
triple = [outputs, inputs, block]...
...ed_component_from(target) {|ns|
if ns.length != 1
fs = ns.delete_if {|n| Array === n}
raise TSort::Cyclic.new("cyclic dependencies: #{fs.join ', '}")
end
n = ns.first
if Array === n
outputs, inputs, block = n
inputs_time = inputs.map {|f| File....