ライブラリ
キーワード
- ASN1 (12)
- AccessLog (12)
- CMath (6)
- Comparable (12)
- Constants (12)
- DRbProtocol (12)
- Enumerable (12)
- GC (12)
- HTTPHeader (12)
- MonitorMixin (12)
-
Mutex
_ m (12) - NKF (12)
- Nodes (12)
- OCSP (12)
- Observable (12)
- Open3 (12)
- Singleton (12)
-
Sync
_ m (6)
検索結果
-
NKF (811.0)
-
nkf(Network Kanji code conversion Filter, https://osdn.net/projects/nkf/) を Ruby から使うためのモジュールです。
...字コード変換コマンドの例です。
//emlist[例][ruby]{
#!/usr/local/bin/ruby
require 'nkf'
opt = ''
opt = ARGV.shift if ARGV[0][0] == ?-
while line = ARGF.gets
print NKF.nkf(opt, line)
end
//}
以下は、漢字コード判別コマンドの例です。
//emlist[例][ruby]{
#!/us......nil) }
printf "%-10s ", file
if str.nil?
puts "EMPTY"
else
puts CODES.fetch(NKF.guess(str))
end
end
//}
=== オプション文字列
-b 入力がバッファリングされる(デフォルト)
-u 入力がバッファリングされない
-j -s -e -w -w16 出力するエ......
-j ISO-2022-JP (7bit JIS) を出力する(デフォルト)
-s Shift_JIS を出力する
-e EUC-JP を出力する
-w UTF-8 を出力する(BOMなし)
-w16 UTF-16 LE を出力する
-J -S -E -W -W16 入力文字列のエンコーディングの推定値を指定する。
-J... -
GC (121.0)
-
GC は Ruby インタプリタの「ゴミ集め(Garbage Collection)」を制御 するモジュールです。
...====[a:tuning_gc] チューニングのための環境変数
* RUBY_GC_HEAP_INIT_SLOTS (default: 10000) - 最初に確保されるスロット数。
* RUBY_GC_HEAP_FREE_SLOTS (default: 4096) - GC後、必ずこの数の空きスロット数が確保される。
つまりGC後に空きスロッ......トが足りなければ新たなページを確保し、空きスロット数を増やす。
* RUBY_GC_HEAP_GROWTH_FACTOR (default: 1.8) - Rubyではスロットを増やすための
メモリ確保をするたびに確保するサイズをこの係数で大きくする。
つまり全スロ......グラムが
必要とするスロット数に速やかに到達するための仕組みである。
* RUBY_GC_HEAP_GROWTH_MAX_SLOTS (default: 0) -
RUBY_GC_HEAP_GROWTH_FACTORで説明したようにRubyではスロットのためのメモリ確保のサイズを
指数的に大きくして... -
Observable (25.0)
-
Observer パターンを提供するモジュールです。
...Observer パターンを提供するモジュールです。
Mix-in により Observer パターンを提供します。
Observable モジュールを include したクラスは
Observable#changed メソッドにより更新フラグを立て、
Observable#notify_observers が呼び出されると......y_observers(Time.now, price)
end
sleep 1
end
end
end
class Price ### A mock class to fetch a stock price (60 - 140).
def self.fetch(symbol)
60 + rand(80)
end
end
class Warner ### An abstract observer of Ticker objects.
def init......erver(self)
end
end
class WarnLow < Warner
def update(time, price) # callback for observer
if price < @limit
print "--- #{time.to_s}: Price below #@limit: #{price}\n"
end
end
end
class WarnHigh < Warner
def update(time, price) # callback for... -
OpenSSL
:: ASN1 (25.0) -
ASN.1(Abstract Syntax Notation One) のデータを取り扱うためのモジュールです。
...を十分に取り扱うのに必要な機能は
持っていません。SSL/TLSで必要な機能しか実装されていません。
ASN.1 は ITU-T と ISO によって定義された、データの構造を定義するための
言語を中心とした規格です。
この言語で定義さ......造型のデータ
y = OpenSSL::ASN1::Sequence.new([OpenSSL::ASN1::Boolean.new(true),
OpenSSL::ASN1::Integer.new(-12)])
# APPLICATION タグクラスのタグ2番でタグ付けられたデータ
z = OpenSSL::ASN1::ASN1Data.new([OpenSSL::ASN1::Boolean.new(fals......L::ASN1::Boolean:0x000000027c4898 @tag=1, @value=true, @tagging=nil, @tag_class=:UNIVERSAL>, #<OpenSSL::ASN1::Integer:0x000000027c47f8 @tag=2, @value=-12, @tagging=nil, @tag_class=:UNIVERSAL>], @tagging=nil, @tag_class=:UNIVERSAL>
OpenSSL::ASN1.decode(z.to_der)
# => #<OpenSSL::ASN1::ASN1Data:0x0... -
Comparable (17.0)
-
比較演算を許すクラスのための Mix-in です。このモジュールをインクルー ドするクラスは、基本的な比較演算子である <=> 演算子を定義してい る必要があります。
...比較演算を許すクラスのための Mix-in です。このモジュールをインクルー
ドするクラスは、基本的な比較演算子である <=> 演算子を定義してい
る必要があります。
self <=> other は
* self が other より大きいなら正の整数
* self... -
Enumerable (17.0)
-
繰り返しを行なうクラスのための Mix-in。このモジュールの メソッドは全て each を用いて定義されているので、インクルード するクラスには each が定義されていなければなりません。
...繰り返しを行なうクラスのための Mix-in。このモジュールの
メソッドは全て each を用いて定義されているので、インクルード
するクラスには each が定義されていなければなりません。
Array, Hash, Range, Enumerator等のクラスで、... -
Sync
_ m (17.0) -
スレッド同期機構である再入可能な reader/writer ロック機能を Mix-in により提供します。
...スレッド同期機構である再入可能な reader/writer ロック機能を Mix-in により提供します。
includeしたクラスではinitializeでsuperを呼び出しておく必要があります。... -
CMath (13.0)
-
複素数演算をサポートするモジュールです。
...p(1/3 πi)
CMath.cbrt(-1) # => (0.5000000000000001+0.8660254037844386i)
# 実数の範囲の立方根
Math.cbrt(-1) # => -1.0
include CMath
# レシーバー無しで使える
cbrt(-1) # => (0.5000000000000001+0.8660254037844386i)
# cbrt! は Math.cbrt のエイリアス
cbrt!(-1) # => -1.0
//}... -
DRb
:: DRbProtocol (13.0) -
drb で使われる通信プロトコルを取り扱うモジュールです。
...、[uri, option] という配列を返します。
プロトコルクラスは DRb::DRbProtocol.#add_protocol で登録します。
DRbProtocol module は登録された各プロトコルクラスに対して順に
open/open_server を呼び出して、接続を確立しようとします。
各......オブジェクトを返します。URI が取り扱えない場合は
DRb::DRbBadScheme を発生させなければなりません。
DRbProtocol module に登録されたクラスでは URI を取り扱えない
場合は DRb::DRbBadURI が発生します。
URI は妥当であるが、通信に......というのが最も簡単なこのメソッドの
実装法です。
: recv_reply
サーバからリプライを受け取り、[success-boolean, reply-value] という配列を
返します。DRb.recv_reply を呼び出し、通信オブジェクトが
保持しているストリームか... -
MonitorMixin (13.0)
-
スレッドの同期機構としてのモニター機能を提供するモジュールです。
...スレッドの同期機構としてのモニター機能を提供するモジュールです。
クラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。
=== 例
//emlist[消費......//emlist[extend する例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin)
//}
しかし、MonitorMixin をクラス定義の際に Module#include を使って
利用する場合は、initialize メソッドで super() か super を呼んで、初期化する必要があります。...