るりまサーチ

最速Rubyリファレンスマニュアル検索!
1154件ヒット [1-100件を表示] (0.071秒)

別のキーワード

  1. fiddle ruby_free
  2. rbconfig ruby
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 3 ... > >>

Kernel.#require(feature) -> bool (18212.0)

Ruby ライブラリ feature をロードします。拡張子補完を行い、 同じファイルの複数回ロードはしません。

...
Ruby
ライブラリ feature をロードします。拡張子補完を行い、
同じファイルの複数回ロードはしません。

feature が絶対パスのときは feature からロードします。
feature が相対パスのときは組み込み変数 $:
に示されるパスを順番...
...境変数 HOME の値に展開されます。
また `~USER' はそのユーザのホームディレクトリに展開されます。

Ruby
ライブラリとは Ruby スクリプト (*.rb) か拡張ライブラリ
(*.so,*.o,*.dll など) であり、feature の拡張子が省略された場合は...
...返します。

@
param feature ファイル名の文字列です。
@
raise LoadError ロードに失敗した場合に発生します。

//emlist[例][ruby]{
$LOADED_FEATURES.grep(/prime/).size # => 0
require
"prime" # => true
$LOADED_FEATURES.grep(/prime/).size # => 1
require
"prime"...

Kernel.#require_relative(relative_feature) -> bool (6196.0)

現在のファイルからの相対パスで require します。

...からの相対パスで require します。

require
File.expand_path(relative_feature, File.dirname(__FILE__))
とほぼ同じです。

Kernel.#eval などで文字列を評価した場合に、そこから
require
_relative を呼出すと必ず失敗します。

@
param relative_feature フ...
...ァイル名の文字列です。
@
raise LoadError ロードに失敗した場合に発生します。
@
see Kernel.#require

=== require と load のスコープ

ローカル変数はファイル間では共有されません。ですので、
ロードしたライブラリのローカル変数を...
...扱い方はKernel.#loadでも同様です。

//emlist[例][ruby]{
# ---------- some.rb -----------
$a = 1
@
a = 1
A = 1
a = 1
# ---------- end some.rb -------

require
'some'
p $a #=> 1
p @a #=> 1
p A #=> 1
p a # undefined local variable or method `a' for #<Object:0x294f9ec @a=1> (NameError)
//}...

FileUtils.#cp_lr(src, dest, noop: nil, verbose: nil, dereference_root: true, remove_destination: false) (151.0)

src へのハードリンク dest を作成します。 src がディレクトリの場合、再帰的にリンクします。 dest がディレクトリの場合、src へのハードリンク dest/src を作成します。

...dest/src を作成します。

@
param src リンク元。一つの場合は文字列でも指定可能です。
二つ以上指定する場合は配列で指定します。

@
param dest リンク作成先のファイルかディレクトリです。

@
param options :noop, :verbose, :der...
...できます。
c:FileUtils#options

@
raise ArgumentError dest が src に含まれる場合に発生します。
@
raise Errno::EEXIST src が一つで dest がすでに存在しディレクトリでない場合に発生します。
@
raise Errno::ENOTDIR src が複数で dest がデ...
...イブラリを site_ruby にインストールする例][ruby]{
require
'fileutils'
FileUtils.rm_r site_ruby + '/mylib', force: true
FileUtils.cp_lr 'lib/', site_ruby + '/mylib'
//}

//emlist[様々なファイルを対象ディレクトリにリンクする例][ruby]{
require
'fileutils'
FileUtils...

Timeout.#timeout(sec, exception_class = nil) {|i| ... } -> object (133.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...のときは制限時間なしで
ブロックを実行します。

@
param sec タイムアウトする時間を秒数で指定します.
@
param exception_class タイムアウトした時、発生させる例外を指定します.
@
param message エラーメッセージを指定します.省略し...
...た場合は
"execution expired" になります.

例 長い計算のタイムアウト
require
'timeout'

def calc_pi(min)
loop do
x = rand
y = rand
x**2 + y**2 < 1.0 ? min[0] += 1 : min[1] += 1
end
end

t = 5
min = [ 0, 0]
begin
Timeout.t...
...in[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443

例 独自の例外を発生させるタイムアウト
#!/usr/bin/env ruby

require
'timeout'

class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep(30)
}
rescue MYError => err
puts "...

Timeout.#timeout(sec, exception_class, message) {|i| ... } -> object (133.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...のときは制限時間なしで
ブロックを実行します。

@
param sec タイムアウトする時間を秒数で指定します.
@
param exception_class タイムアウトした時、発生させる例外を指定します.
@
param message エラーメッセージを指定します.省略し...
...た場合は
"execution expired" になります.

例 長い計算のタイムアウト
require
'timeout'

def calc_pi(min)
loop do
x = rand
y = rand
x**2 + y**2 < 1.0 ? min[0] += 1 : min[1] += 1
end
end

t = 5
min = [ 0, 0]
begin
Timeout.t...
...in[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443

例 独自の例外を発生させるタイムアウト
#!/usr/bin/env ruby

require
'timeout'

class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep(30)
}
rescue MYError => err
puts "...

絞り込み条件を変える

OpenSSL::ASN1.#decode(der) -> OpenSSL::ASN1::ASN1Data (127.0)

DER 表現の文字列を解析し、そこにエンコードされている ASN.1 の値を OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスとして返します。

...す。

例:

ruby
-e '
require
"openssl"
require
"pp"
pem = File.read(ARGV[0])
cert = OpenSSL::X509::Certificate.new(pem)
pp OpenSSL::ASN1.decode(cert.to_der)
' mycert.pem
#<OpenSSL::ASN1::Sequence:0x814e9fc
@
tag=16,
@
tag_class=:UNIVERSAL,
@
tagging=nil,
@
value=
[#<Op...
...nce:0x814ead8
@
tag=16,
@
tag_class=:UNIVERSAL,
@
tagging=nil,
@
value=
[#<OpenSSL::ASN1::ASN1Data:0x814f690
@
tag=0,
@
tag_class=:CONTEXT_SPECIFIC,
@
value=
[#<OpenSSL::ASN1::Integer:0x814f6a4
@
tag=2,
@
tag_class=:U...
...NIVERSAL,
@tagging=nil,
@
value=2>]>,
...

@
param der DER形式の文字列
@
raise OpenSSL::ASN1::ASN1Error 解析に失敗した場合に発生します...

Timeout.#timeout(sec, exception_class = nil) {|i| ... } -> object (127.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...なしで
ブロックを実行します。

@
param sec タイムアウトする時間を秒数で指定します.
@
param exception_class タイムアウトした時、発生させる例外を指定します.

例 長い計算のタイムアウト
require
'timeout'

def calc_pi(min)
loop do...
...in[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443

例 独自の例外を発生させるタイムアウト
#!/usr/bin/env ruby

require
'timeout'

class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep(30)
}
rescue MYError => err
puts "...
...puts err
end

=== 注意

timeout による割り込みは Thread によって実現されています。
C 言語レベルで実装され、
Ruby
のスレッドが割り込めない処理に対して timeout は無力です。
そのようなものは実用レベルでは少ないのです...

FileUtils.#cp_r(src, dest, options = {}) -> () (115.0)

src を dest にコピーします。src がディレクトリであったら再帰的に コピーします。その際 dest がディレクトリなら dest/src にコピーします。

...dest/src にコピーします。

@
param src コピー元。一つの場合は文字列でも指定可能です。
二つ以上指定する場合は配列で指定します。

@
param dest コピー先のファイルかディレクトリです。

@
param options :preserve, :noop, :verbo...
...tions

//emlist[][ruby]{
# installing ruby library "mylib" under the site_ruby
require
'fileutils'
FileUtils.rm_r(site_ruby + '/mylib', force: true)
FileUtils.cp_r('lib/', site_ruby + '/mylib')
# other sample
require
'fileutils'
FileUtils.cp_r(%w(mail.rb field.rb debug/), site_ruby + '/tmail')
FileU...
...tils.cp_r(Dir.glob('*.rb'), '/home/taro/lib/ruby',
noop: true, verbose: true)
//}...

Abbrev.#abbrev(words, pattern = nil) -> Hash (109.0)

文字列の配列から一意に決まる短縮形を計算し、 短縮形をキー、元の文字列を値とするハッシュを返します。

...るものから短縮形を計算します。

@
param words 元となる文字列の配列。
@
param pattern Regexp か String を指定します。

@
return 短縮形をキー、元の文字列を値とするハッシュを返します。

require
'abbrev'

# words に同じ文字列が含...
...(%w[ruby ruby]).sort
# => [["ruby", "ruby"]]

# 空白が含まれていても適切に処理します。
pp Abbrev.abbrev(['ru by']).sort
# => [["r", "ru by"],
# ["ru", "ru by"],
# ["ru ", "ru by"],
# ["ru b", "ru by"],
# ["ru by", "ru by"]]...
...# sort していない例
p %w[ruby rubyist].abbrev
#=> {"ruby" => "ruby",
# "rubyi" => "rubyist",
# "rubyis" => "rubyist",
# "rubyist" => "rubyist"}...

Kernel.#load(file, priv = false) -> true (99.0)

Ruby プログラム file をロードして実行します。再ロード可能です。

...
Ruby
プログラム file をロードして実行します。再ロード可能です。

file が絶対パスのときは file からロードします。
file が相対パスのときは組み込み変数 $:
に示されるパスとカレントディレクトリを順番に探し、最初に見...
...返します。

@
param file ファイル名の文字列です。
@
param priv 真のとき、ロード・実行は内部的に生成される
無名モジュールをトップレベルとして行われ、
グローバルな名前空間を汚染しません。
@
raise LoadErro...
...ドに失敗した場合に発生します。
@
see Kernel.#require

=== require と load の違い

Kernel.#require は同じファイルは一度だけしかロードしませんが、
Kernel.#load は無条件にロードします。
また、require は拡張子.rb や .so を自動的に補完...

絞り込み条件を変える

<< 1 2 3 ... > >>