ライブラリ
- ビルトイン (2)
- csv (1)
-
drb
/ timeridconv (1) - monitor (1)
- openssl (3)
- optparse (1)
- psych (1)
-
rake
/ testtask (1) - resolv (1)
-
rexml
/ document (1) -
rubygems
/ version (1) -
webrick
/ httpproxy (1) -
webrick
/ httpserver (1) -
webrick
/ httpservlet / abstract (1) -
webrick
/ server (1) - win32ole (3)
キーワード
- AbstractServlet (1)
- CSV (1)
- ConditionVariable (2)
- HTTPProxyServer (1)
- HTTPServer (1)
- OptionParser (1)
- Request (1)
- Resolv (1)
- SSLServer (1)
- SSLSocket (1)
- SimpleServer (1)
- TestTask (1)
- TimerIdConv (1)
- Transitive (1)
- UndefinedConversionError (1)
- Version (1)
-
WIN32OLE
_ EVENT (1) -
WIN32OLE
_ VARIABLE (1) -
WIN32OLE
_ VARIANT (1) - YAMLTree (1)
検索結果
先頭5件
-
WEBrick
:: HTTPServlet :: AbstractServlet (27022.0) -
サーブレットの抽象クラスです。実装は AbstractServlet のサブクラスで行います。
サーブレットの抽象クラスです。実装は AbstractServlet のサブクラスで行います。
サーブレットは以下のように使われます。WEBrick::HTTPServlet::CGIHandler は
webrick/httpservlet/cgihandler で提供されているサーブレットです。
CGIHandler は AbstractServlet のサブクラスです。
require 'webrick'
srv = WEBrick::HTTPServer.new({ :DocumentRoot => './',
... -
Thread
:: ConditionVariable (18220.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...が空になった場合、
あるいは満タンになった場合に Condition Variable を使って wait しています。
require 'thread'
class TinyQueue
def initialize(max=2)
@max = max
@full = ConditionVariable.new
@empty = ConditionVariable.new
@mutex = Mut... -
MonitorMixin
:: ConditionVariable (18100.0) -
MonitorMixin と Monitor のための 条件変数クラスです。 MonitorMixin#new_cond が返します。ユーザが MonitorMixin::ConditionVariable.new を直接呼ぶことはありません。
MonitorMixin と Monitor のための
条件変数クラスです。
MonitorMixin#new_cond が返します。ユーザが
MonitorMixin::ConditionVariable.new を直接呼ぶことはありません。 -
Gem
:: Version (18094.0) -
文字列で表現されたバージョンを比較可能 (Comparable) にするためのクラスです。
文字列で表現されたバージョンを比較可能 (Comparable) にするためのクラスです。
バージョンを文字列で表したとき、単純に String#<=> で比較すると、
"1.9" のほうが "1.10" よりも大きい(バージョンが高い)ことになってしまい、
正しく判定できません。
Gem::Version はこの問題を解決します。
//emlist[文字列での比較と Gem::Version での比較][ruby]{
p "1.9" < "1.10" # => false
p Gem::Version.new("1.9") < Gem::Version.new("1.10") # => ... -
OpenSSL
:: SSL :: SSLServer (18094.0) -
SSL サーバーのためのクラス。
SSL サーバーのためのクラス。
TCPServer をラップするクラスで、TCPServer で接続した
ソケットを OpenSSL::SSL::SSLSocket でラップする機能を持ちます。
おおよそ TCPServer と同様のメソッドを持ちます。
基本的には SSL サーバを簡単に実装するためのクラスであり、
これを利用せずとも SSL サーバを実装することは可能です。
以下はクライアントからの入力を標準出力に出力するだけのサーバです。
require 'socket'
require 'openssl'
include OpenSSL
ctx =... -
REXML
:: Formatters :: Transitive (18076.0) -
XMLドキュメントをテキストの内容を変えずに 多少の整形を加えて出力するクラスです。
XMLドキュメントをテキストの内容を変えずに
多少の整形を加えて出力するクラスです。
これが有用な場合はあまりないでしょう。
整形されていない XML を整形したいが、
テキストの空白は改行は変えたくない場合には役にたつかもしれません。
ただ、ほとんどの場合は奇妙な出力結果になるでしょう。
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/formatters/transitive'
doc = REXML::Document.new <<EOS
<root><children>
<grandchildren foo='ba... -
WIN32OLE
_ VARIANT (18076.0) -
OLEオートメーションの標準型のVARIANTオブジェクトをRubyで利用するための クラスです。
OLEオートメーションの標準型のVARIANTオブジェクトをRubyで利用するための
クラスです。
VARIANT型とは、型情報と値のペアから構成されるデータ型で、元はVBの型無し
変数のための構造体です。OLEオートメーションのメソッド呼び出しには汎用型
として引数にはVARIANT型を利用します。
* 型情報は、WIN32OLE_VARIANT#vartypeで取得できます。
* 値は、WIN32OLE_VARIANT#valueで取得できます。
OLEオートメーションのメソッド呼び出し規約では、引数はVARIANT型の配列と
して定義されています。
この規約に対して、WIN3... -
Resolv (18052.0)
-
リゾルバを表すクラスです。 このクラス自体は実際には名前解決をせず、 Resolv.new で与えられたリゾルバに順に 問合せることしかしません。
リゾルバを表すクラスです。
このクラス自体は実際には名前解決をせず、
Resolv.new で与えられたリゾルバに順に
問合せることしかしません。
このクラスのクラスメソッドで名前解決をした場合には、
内部で /etc/hosts, DNS の順に問合せます。
順に問合せる過程で、あるリゾルバが1個以上の
結果を返した場合、それ以降のリゾルバには
問い合わせをしません。 -
WEBrick
:: SimpleServer (18052.0) -
サーバのタイプを表すクラスです。 WEBrick::GenericServer.new の設定の :ServerType の値として指定した場合 サーバは通常のプロセスとして動作します。
サーバのタイプを表すクラスです。
WEBrick::GenericServer.new の設定の :ServerType の値として指定した場合
サーバは通常のプロセスとして動作します。 -
WIN32OLE
_ EVENT (18040.0) -
OLEオートメーションサーバからのイベント通知を制御するクラスです。
OLEオートメーションサーバからのイベント通知を制御するクラスです。
OLEオートメーションサーバによっては、サーバの処理の過程でクライアントが
あらかじめ登録したメソッドを呼び出すものがあります。このサーバが登録し
たメソッドを呼び出す動作を「イベント」と呼びます。WIN32OLE_EVENTを利用
すると、ブロックの形式でイベントを受け取るメソッドをサーバへ登録できま
す。
=== サンプルコード
ie = WIN32OLE.new('InternetExplorer.Application.1')
event = WIN32OLE_EVENT.new(ie, 'DWebBr... -
CSV (18022.0)
-
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
=== 読み込み
//emlist[][ruby]{
require "csv"
csv_text = <<~CSV_TEXT
Ruby,1995
Rust,2010
CSV_TEXT
IO.write "sample.csv", csv_text
# ファイルから一行ずつ
CSV.foreach("sample.csv") do |row|
p row
end
# => ["Ruby", "1995"]
# ["Rust", "2010"]
# ファイルから一度に
p CSV.r... -
DRb
:: TimerIdConv (18022.0) -
オブジェクトと識別子を相互に変換するクラスです。 これによって識別子に変換されたオブジェクトは一定時間 GC から保護されます。
オブジェクトと識別子を相互に変換するクラスです。
これによって識別子に変換されたオブジェクトは一定時間
GC から保護されます。
DRb::DRbIdConv では to_id で識別子に
変換し、リモートに送られたオブジェクトは GC から保護されません。
ローカルプロセスからの参照がなくなったオブジェクトは、
リモートからの参照が生きていたとしても GC によって廃棄される
可能性があります。
このクラスを DRb::DRbIdConv の代わりに用いることで、
to_id でオブジェクトを識別子に変換してから
一定時間(DRb::TimerIdConv.new の timeout で指... -
Encoding
:: UndefinedConversionError (18022.0) -
エンコーディング変換後の文字が存在しない場合に発生する例外。
エンコーディング変換後の文字が存在しない場合に発生する例外。
UTF-8 にしかない文字を EUC-JP に変換しようとした場合などに発生します。
//emlist[例][ruby]{
"\u2603".encode(Encoding::EUC_JP)
#=> Encoding::UndefinedConversionError: U+2603 from UTF-8 to EUC-JP
//}
変換が多段階でなされ、その途中で例外が生じた場合は、
例外オブジェクトが保持するエラー情報はその中間のものになります。
//emlist[例][ruby]{
ec = Encoding::Co... -
WEBrick
:: HTTPProxyServer (18022.0) -
プロクシの機能を提供するクラスです。CONNECT メソッドにも対応しています。
プロクシの機能を提供するクラスです。CONNECT メソッドにも対応しています。
* https://magazine.rubyist.net/articles/0002/0002-WEBrickProxy.html
以下は完全に動作するプロクシサーバの例です。
require 'webrick'
require 'webrick/httpproxy'
s = WEBrick::HTTPProxyServer.new(Port: 8080)
Signal.trap('INT') do
s.shutdown
end
s.start -
WEBrick
:: HTTPServer (18022.0) -
HTTP サーバの機能を提供するクラスです。
HTTP サーバの機能を提供するクラスです。
以下は HTTP サーバとしてちゃんと動作する例です。
require 'webrick'
srv = WEBrick::HTTPServer.new({:DocumentRoot => '/home/username/public_html/',
:BindAddress => '127.0.0.1',
:Port => 10080})
srv.mount('/hoge.pl', WEBrick::HTTPSe... -
WIN32OLE
_ VARIABLE (18022.0) -
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
OLEオートメーションの変数情報をRubyで参照するためのクラスです。
OLEオートメーションサーバは、定数(WIN32OLE.const_load)、メソッ
ド/プロパティ(WIN32OLE_METHOD)、イベント(WIN32OLE_EVENT)
のほかに変数をクライアントへ提供できます。WIN32OLE_VARIABLEクラスは、サー
バが提供する変数の情報をオブジェクト化します。変数情報にはCOMで決められ
た構造体やユーザ定義型のフィールド情報などがありますが、最も良く利用さ
れるのはenum(列挙型)のメンバ情報です。enumのメンバは定数として利用で
きます。
WIN32OL... -
Psych
:: Visitors :: YAMLTree (9022.0) -
Ruby オブジェクトから YAML の AST を構築するためのクラスです。
Ruby オブジェクトから YAML の AST を構築するためのクラスです。
=== 例
builder = Psych::Visitors::YAMLTree.new
builder << { :foo => 'bar' }
builder << ["baz", "bazbaz"]
builder.tree # => #<Psych::Nodes::Stream ... > A stream containing two documents
puts tree.to_yaml
# =>
# ---
# :foo: bar
# ---
# - baz... -
OpenSSL
:: X509 :: Request (112.0) -
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす クラスです。
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす
クラスです。
X.509 CSR については 2986 などを参照してください。
=== 例
CSR を生成する例。
require 'openssl'
# ファイルから秘密鍵を読み込む
rsa = OpenSSL::PKey::RSA.new(File.read("privkey.pem"))
# 新しい CSR オブジェクトを生成
csr = OpenSSL::X509::Request.new
# DN を生成
name = OpenSSL::X50... -
OpenSSL
:: SSL :: SSLSocket (58.0) -
ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。
ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。
=== 例
SSL/TLS サーバに接続して write します。
require 'socket'
require 'openssl'
include OpenSSL
soc = TCPSocket.new('www.example.com', 443)
ssl = SSL::SSLSocket.new(soc)
ssl.connect
ssl.post_connection_check('www.example.com')
raise "verification er... -
OptionParser (58.0)
-
コマンドラインのオプションを取り扱うためのクラスです。
コマンドラインのオプションを取り扱うためのクラスです。
オプションが指定された時に呼ばれるブロックを
OptionParser#on メソッドで登録していきます。
つまり、OptionParser を使う場合、基本的には
(1) OptionParser オブジェクト opt を生成する。
(2) オプションを取り扱うブロックを opt に登録する。
(3) opt.parse(ARGV) でコマンドラインを実際に parse する。
というような流れになります。
//emlist[][ruby]{
require "optparse"
ProgramConfig = Ha... -
Rake
:: TestTask (40.0) -
ユニットテストを実行するためのタスクを作成するクラスです。
ユニットテストを実行するためのタスクを作成するクラスです。
例:
Rake::TestTask.new do |t|
t.libs << "test"
t.test_files = FileList['test/test*.rb']
t.verbose = true
end
以下に test ターゲットの使用例を示します。
例:
rake test # run tests normally
rake test TEST=just_one_file.rb # run just one t...