ライブラリ
- ビルトイン (129)
-
net
/ http (12) - openssl (72)
-
webrick
/ httpstatus (24)
クラス
- IO (12)
-
OpenSSL
:: PKCS7 (12) -
OpenSSL
:: SSL :: SSLContext (36) - String (24)
- Symbol (81)
モジュール
-
OpenSSL
:: OCSP (24) -
WEBrick
:: HTTPStatus (12)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - HTTPInternalServerError (12)
- InternalServerError (12)
- NOINTERN (24)
-
RC
_ INTERNAL _ SERVER _ ERROR (12) -
RESPONSE
_ STATUS _ INTERNALERROR (12) -
SESSION
_ CACHE _ NO _ INTERNAL (12) -
SESSION
_ CACHE _ NO _ INTERNAL _ LOOKUP (12) -
SESSION
_ CACHE _ NO _ INTERNAL _ STORE (12) - Symbol (12)
-
all
_ symbols (12) - capitalize (12)
- downcase (9)
- id2name (12)
-
internal
_ encoding (12) -
rb
_ ary _ pop (12) -
rb
_ sym _ interned _ p (12) - swapcase (12)
-
to
_ s (12) -
to
_ sym (12) - upcase (12)
検索結果
先頭5件
-
String
# to _ sym -> Symbol (3025.0) -
文字列に対応するシンボル値 Symbol を返します。
...応する文字列を得るには
Symbol#to_s または Symbol#id2name を使います。
シンボル文字列にはヌルキャラクタ("\0")、空の文字列の使用も可能です。
//emlist[例][ruby]{
p "foo".intern # => :foo
p "foo".intern.to_s == "foo" # => true
//}... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1524.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...)機能>))
* ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>))
* ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>))
* ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォー......y interpreter [ruby] [change]
クラスの特異クラスの特異クラスは特異クラス自身であると定義されました
((<ruby-bugs-ja:313>))。なんだかよくわかりません(^^;
class << Object
p [self.id, self]
class << self
p [self......ol#intern はなくなった)
== 追加された定数
: ((<Float::DIG|Float/DIG>)) [new]
: ((<Float::EPSILON|Float/EPSILON>)) [new]
: ((<Float::MANT_DIG|Float/MANT_DIG>)) [new]
: ((<Float::MAX|Float/MAX>)) [new]
: ((<Float::MAX_10_EXP|Float/MAX_10_EXP>)) [new]
: ((<Float::MAX_EXP|Float/MAX_EXP>))... -
Symbol
# downcase(*options) -> Symbol (106.0) -
大文字を小文字に変換したシンボルを返します。
...大文字を小文字に変換したシンボルを返します。
(self.to_s.downcase.intern と同じです。)
:FOO.downcase #=> :foo
@see String#downcase... -
Symbol (42.0)
-
シンボルを表すクラス。シンボルは任意の文字列と一対一に対応するオブジェクトです。
...ん(そうでなければ文法エラーになります)。
そうでない文字列をシンボルにしたい場合は残りの表記か String#intern を使用してください。
=== シンボルの実装と用途
==== 実装
Rubyの内部実装では、メソッド名や変数名、定数名......また、文字列と違い、immutable (変更不可)であり、同値ならば必ず同一です。
p "abc" == "abc" #=> true
p "abc".equal?("abc") #=> false
p :abc == :abc #=> true
p :abc.equal?(:abc) #=> true ←同値ならば同一
==== 用途
実用面では、シンボルは文......{ rng.bytes(1000).intern }
はテーブルのサイズを増大させ、メモリを圧迫します。
例えば web アプリケーションのようなプロセスを動かしつづけるような
アプリケーションにおいて、ユーザからの入力を String#intern で
シンボル......DoS に対して弱い
可能性がありましたが、
そのような問題は2.2以降では解決されました。
ただし拡張ライブラリ内で rb_intern によって生成された
シンボルに関するテーブル上の情報はGCされませんので注意してください。... -
Symbol
# id2name -> String (30.0) -
シンボルに対応する文字列を返します。
...シンボルに対応する文字列を返します。
逆に、文字列に対応するシンボルを得るには
String#intern を使います。
p :foo.id2name # => "foo"
p :foo.id2name.intern == :foo # => true
@see String#intern......シンボルに対応する文字列を返します。
逆に、文字列に対応するシンボルを得るには
String#intern を使います。
p :foo.id2name # => "foo"
p :foo.id2name.intern == :foo # => true
@see String#intern
@see Symbol#name... -
Symbol
# to _ s -> String (30.0) -
シンボルに対応する文字列を返します。
...シンボルに対応する文字列を返します。
逆に、文字列に対応するシンボルを得るには
String#intern を使います。
p :foo.id2name # => "foo"
p :foo.id2name.intern == :foo # => true
@see String#intern......シンボルに対応する文字列を返します。
逆に、文字列に対応するシンボルを得るには
String#intern を使います。
p :foo.id2name # => "foo"
p :foo.id2name.intern == :foo # => true
@see String#intern
@see Symbol#name... -
Symbol
. all _ symbols -> [Symbol] (24.0) -
定義済みの全てのシンボルオブジェクトの配列を返します。
...定義済みの全てのシンボルオブジェクトの配列を返します。
p Symbol.all_symbols #=> [:RUBY_PLATFORM, :RUBY_VERSION, ...]
リテラルで表記したシンボルのうち、コンパイル時に値が決まるものはその時に生成されます。
それ以外の式......ります)
def number
'make_3'
end
p Symbol.all_symbols.select{|sym|sym.to_s.include? 'make'}
#=> [:make_1, :make_2]
re = #確実に生成されるように代入操作を行う
:make_1,
:'make_2',
:"#{number}",
'make_4'.intern
p Symbol.all_symbols.select{|sym|sym.to_s.i...