ライブラリ
- ビルトイン (94)
- forwardable (22)
- json (11)
- monitor (11)
- psych (17)
- thread (2)
- tsort (21)
-
webrick
/ httpstatus (11) -
webrick
/ httputils (11) - win32ole (11)
クラス
- Array (11)
- Module (16)
- NilClass (11)
- Struct (14)
-
WEBrick
:: HTTPUtils :: FormData (11) -
WIN32OLE
_ TYPE (11)
モジュール
- Enumerable (22)
- Forwardable (22)
- JSON (11)
- Psych (17)
- TSort (21)
-
WEBrick
:: HTTPStatus (11)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - ConditionVariable (11)
- Marshal フォーマット (11)
- MonitorMixin (11)
-
NEWS for Ruby 2
. 7 . 0 (5) - Numeric (11)
-
const
_ source _ location (5) - constants (11)
-
def
_ delegator (11) -
def
_ instance _ delegator (11) -
default
_ event _ sources (11) -
each
_ strongly _ connected _ component _ from (21) - new (14)
-
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 3 feature (11) -
ruby 1
. 9 feature (11) -
safe
_ load (17) -
sort
_ by (22) -
to
_ a (11) - tsort (11)
-
webrick
/ cgi (11) - 演算子式 (11)
検索結果
先頭5件
-
WEBrick
:: HTTPUtils :: FormData # [](header) -> String | nil (21206.0) -
自身が multipart/form-data なデータの場合に、header で指定された ヘッダの値を文字列で返します。無ければ nil を返します。
...tipart/form-data なデータの場合に、header で指定された
ヘッダの値を文字列で返します。無ければ nil を返します。
@param header ヘッダ名を文字列で指定します。大文字と小文字を区別しません。
例:
require "webrick/cgi"
class MyCGI......< WEBrick::CGI
def do_GET(req, res)
p req.query['q']['content-type'] #=> "plain/text"
end
end
MyCGI.new.start()... -
WEBrick
:: HTTPStatus . [](code) -> Class (21201.0) -
指定された整数が表すステータスコードに対応する WEBrick::HTTPStatus::Status のサブクラスを返します。
...指定された整数が表すステータスコードに対応する WEBrick::HTTPStatus::Status
のサブクラスを返します。
@param code HTTP のステータスコードを表す整数を指定します。
require 'webrick'
p WEBrick::HTTPStatus[200] #=> WEBrick::HTTPStatus::OK... -
JSON
. [](object , options) -> object (18212.0) -
文字列のように扱えるデータを受け取った場合は Ruby のオブジェクトに変換して返します。 そうでない場合は JSON に変換して返します。
...定可能です。
@param options JSON.#parse, JSON.#generate の説明を参照してください。
//emlist[例][ruby]{
require "json"
string=<<JSON
{ "a":1, "b":2, "c":3 }
JSON
hash = { a: 1, b: 2, c: 3 }
JSON[string].class # => Hash
JSON[string] # =>......{"a"=>1, "b"=>2, "c"=>3}
JSON[string, symbolize_names: true] # => {:a=>1, :b=>2, :c=>3}
JSON[hash].class # => String
JSON[hash] # => "{\"a\":1,\"b\":2,\"c\":3}"
//}
@see JSON.#parse, JSON.#generate... -
Array
. [](*item) -> Array (18206.0) -
引数 item を要素として持つ配列を生成して返します。
...引数 item を要素として持つ配列を生成して返します。
Array のサブクラスを作成したしたときに、そのサブクラスのインスタンスを作成
しやすくするために用意されている。
@param item 配列の要素を指定します。
//emlist[例]......[ruby]{
Array[1, 2, 3] #=> [1, 2, 3]
class SubArray < Array
# ...
end
p SubArray[1, 2, 3] # => [1, 2, 3]
//}... -
Module
# const _ source _ location(name , inherited = true) -> [String , Integer] (6124.0) -
name で指定した定数の定義を含むソースコードのファイル名と行番号を配列で返します。
...スコードのファイル名と行番号を配列で返します。
@param name Symbol,String で定数の名前を指定します。
@param inherited true を指定するとスーパークラスや include したモジュールで定義された定数が対象にはなります。false を指......nil を返します。
定数は見つかったがソースファイルが見つからなかった場合は空の配列を返します。
//emlist[例][ruby]{
# test.rb:
class A # line 1
C1 = 1
C2 = 2
end
module M # line 6
C3 = 3
end
class B < A # line 10
inclu......urce_location('A') # => ["test.rb", 1] -- Object は継承していないが追加で modules をチェックする
p Object.const_source_location('A::C1') # => ["test.rb", 2] -- ネストの指定もサポートしている
p Object.const_source_location('String') # => [] -- 定... -
webrick
/ cgi (6048.0) -
一般の CGI 環境で webrick ライブラリのサーブレットと同じように CGI スクリプトを書くための ライブラリです。サーバが WEBrick でなくても使うことが出来ます。
...I 環境で webrick ライブラリのサーブレットと同じように CGI スクリプトを書くための
ライブラリです。サーバが WEBrick でなくても使うことが出来ます。
=== 使い方
WEBrick のサーブレットを作成するのと同じように、WEBrick::CGI......rick::CGI#start メソッドは service メソッドを呼び出し、service メソッドはリクエストに応じて
do_XXX メソッドを呼び出します。このようにしてスクリプトは実行されます。
例:
#!/usr/local/bin/ruby
require 'webrick/cgi'
class MyCGI < WEBric......GI
def do_GET(req, res)
d = req.query['field_name'] #=> FormData クラスのインスタンス
d.name #=> "field_name"
d.filename #=> もしあればファイル名を返す。
d['content-type'] #=> ヘッダの値は []... -
Numeric (6024.0)
-
数値を表す抽象クラスです。Integer や Float などの数値クラス は Numeric のサブクラスとして実装されています。
...値を表す抽象クラスです。Integer や Float などの数値クラス
は Numeric のサブクラスとして実装されています。
演算や比較を行うメソッド(+, -, *, /, <=>)は Numeric のサブクラスで定義されま
す。Numeric で定義されているメソッド......-
[] | - - o o - - -
^ | - - o o - - -
Numeric Integer Fixnum Bignum Float Rational C......はceil, floor を使用して以下のように定義できます。
//emlist[例][ruby]{
if n > 0 then
n.ceil
else
n.floor
end
//}
また、任意桁の切上げ、切捨て、四捨五入を行うメソッドは以下のように
定義できます。
//emlist[][ruby]{
class Numeric
def......o - - -
[] | - o - - -
^ | - o - - -
Numeric Integer Float Rational Complex
---------------------... -
NilClass
# to _ a -> Array (6022.0) -
空配列 [] を返します。
...空配列 [] を返します。
//emlist[例][ruby]{
nil.to_a #=> []
//}... -
MonitorMixin (6018.0)
-
スレッドの同期機構としてのモニター機能を提供するモジュールです。
...ラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。
=== 例
//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin) # 配列にモ......ynchronize do # ロックする
empty_cond.wait_while { buf.empty? } # 配列が空である間はロックを開放して待つ
print buf.shift # 配列が空でなくなった後ロックを取得してこの行を実行
end # ロックを開放
end
end
# producer
while line = A......その initialize は引数を受け付けないので
super ではなく super() を呼ぶ必要があります。
//emlist[include する例][ruby]{
require 'monitor'
class MyObject
include MonitorMixin
def initialize(val)
super()
@value = val
end
def to_s
synchronize {... -
Thread
:: ConditionVariable (6018.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとしま......作
cv.signal
}
}
以下は 14445 で紹介されている例です。@q が空になった場合、
あるいは満タンになった場合に Condition Variable を使って wait しています。
require 'thread'
class TinyQueue
def initialize(max=2)
@max =......@full = ConditionVariable.new
@empty = ConditionVariable.new
@mutex = Mutex.new
@q = []
end
def count
@q.size
end
def enq(v)
@mutex.synchronize{
@full.wait(@mutex) if count == @max
@q.push v
@empty.signal if count == 1...