ライブラリ
- ビルトイン (63)
-
cgi
/ html (48) - cmath (20)
-
json
/ add / complex (2) - matrix (2)
-
rdoc
/ parser / ruby (1) -
ripper
/ lexer (5) -
rubygems
/ exceptions (2) - socket (2)
クラス
- Complex (50)
- Matrix (2)
- NilClass (1)
- Numeric (4)
- Ripper (1)
-
Ripper
:: Lexer (3) - SignalException (5)
- Socket (1)
- String (1)
モジュール
-
CGI
:: HtmlExtension (47) - CMath (20)
- Kernel (2)
-
Socket
:: Constants (1)
キーワード
- * (1)
- ** (1)
- + (1)
- - (1)
- -@ (1)
-
/ (1) - < (1)
- <= (1)
- == (1)
- > (1)
- >= (1)
- Complex (3)
- DependencyRemovalException (1)
- EndOfYAMLException (1)
- HtmlExtension (1)
- I (1)
-
IFF
_ SIMPLEX (2) - Lexer (1)
- RubyLex (1)
- SignalException (1)
- a (2)
- abs (1)
- abs2 (1)
- acos (1)
- acosh (1)
- angle (1)
- arg (1)
- asin (1)
- asinh (1)
- atan (1)
- atan2 (1)
- atanh (1)
- base (1)
- between? (1)
- blockquote (2)
- cbrt (1)
- checkbox (2)
-
checkbox
_ group (2) - clamp (1)
- coerce (1)
- conj (1)
- conjugate (1)
- cos (1)
- cosh (1)
- denominator (1)
- exp (1)
- fdiv (2)
-
file
_ field (2) - finite? (1)
- form (4)
-
here
_ document (1) -
heredoc
_ identifier (1) -
heredoc
_ restore (1) - hidden (2)
- html (2)
- i (1)
- imag (1)
- imaginary (1)
- img (2)
- infinite? (1)
- inspect (1)
-
irb
/ ruby-lex (1) -
irb
/ slex (1) -
json
/ add / complex (1) -
json
_ create (1) -
lex
_ get _ str (1) -
lex
_ getline (1) - log (2)
- log10 (1)
- log2 (1)
- magnitude (1)
-
marshal
_ dump (1) -
multipart
_ form (4) - new (3)
- numerator (1)
- parse (1)
-
parse
_ string (1) -
password
_ field (2) - phase (1)
- polar (2)
- quo (2)
-
radio
_ group (2) - rationalize (2)
-
rb
_ reserved _ word (1) - real (1)
- real? (1)
- rect (2)
- rectangular (2)
- reset (2)
-
ripper
/ lexer (1) -
scrolling
_ list (2) - signm (1)
- signo (1)
- sin (1)
- sinh (1)
- sqrt (1)
- submit (2)
- tan (1)
- tanh (1)
-
text
_ field (2) - textarea (2)
-
to
_ c (4) -
to
_ f (1) -
to
_ i (1) -
to
_ json (1) -
to
_ r (1) -
to
_ s (1) - tokenize (1)
- tr (1)
- trace (1)
- yylex (1)
- 字句構造 (1)
検索結果
先頭5件
-
Complex
# finite? -> bool (9001.0) -
実部と虚部の両方が有限値の場合に true を、そうでない場合に false を返します。
実部と虚部の両方が有限値の場合に true を、そうでない場合に false を返します。
//emlist[例][ruby]{
(1 + 1i).finite? # => true
(Float::INFINITY + 1i).finite? # => false
//}
@see Complex#infinite? -
Complex
# imag -> Numeric (9001.0) -
自身の虚部を返します。
自身の虚部を返します。
//emlist[例][ruby]{
Complex(3, 2).imag # => 2
//}
@see Numeric#imag -
Complex
# imaginary -> Numeric (9001.0) -
自身の虚部を返します。
自身の虚部を返します。
//emlist[例][ruby]{
Complex(3, 2).imag # => 2
//}
@see Numeric#imag -
Complex
# infinite? -> nil | 1 (9001.0) -
実部と虚部のどちらも無限大ではない場合に nil を、そうでない場合に 1 を返します。
実部と虚部のどちらも無限大ではない場合に nil を、そうでない場合に 1 を返します。
//emlist[例][ruby]{
(1+1i).infinite? # => nil
(Float::INFINITY + 1i).infinite? # => 1
//}
@see Complex#finite? -
Complex
# inspect -> String (9001.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
//emlist[例][ruby]{
Complex(2).inspect # => "(2+0i)"
Complex('-8/6').inspect # => "((-4/3)+0i)"
Complex('1/2i').inspect # => "(0+(1/2)*i)"
Complex(0, Float::INFINITY).inspect # => "(0+Infinity*i)"
Complex(Float:... -
Complex
# magnitude -> Numeric (9001.0) -
自身の絶対値を返します。
自身の絶対値を返します。
以下の計算の結果を Float オブジェクトで返します。
sqrt(self.real ** 2 + self.imag ** 2)
//emlist[例][ruby]{
Complex(1, 2).abs # => 2.23606797749979
Complex(3, 4).abs # => 5.0
Complex('1/2', '1/2').abs # => 0.7071067811865476
//}
@see Complex#abs2 -
Complex
# marshal _ dump -> Array (9001.0) -
Marshal.#load のためのメソッドです。 Complex::compatible#marshal_load で復元可能な配列を返します。
Marshal.#load のためのメソッドです。
Complex::compatible#marshal_load で復元可能な配列を返します。
2.0 以降では Marshal.#load で 1.8 系の Complex オブジェクト
を保存した文字列も復元できます。
[注意] Complex::compatible は通常の方法では参照する事ができません。 -
Complex
# phase -> Float (9001.0) -
自身の偏角を[-π,π]の範囲で返します。
自身の偏角を[-π,π]の範囲で返します。
//emlist[例][ruby]{
Complex.polar(3, Math::PI/2).arg # => 1.5707963267948966
//}
非正の実軸付近での挙動に注意してください。以下の例のように虚部が 0.0 と
-0.0 では値が変わります。
//emlist[例][ruby]{
Complex(-1, 0).arg #=> 3.141592653589793
Complex(-1, -0).arg #=> 3.141592653589793
Complex(-1... -
Complex
# polar -> [Numeric , Numeric] (9001.0) -
自身の絶対値と偏角を配列にして返します。
自身の絶対値と偏角を配列にして返します。
//emlist[例][ruby]{
Complex.polar(1, 2).polar # => [1, 2]
//}
@see Numeric#polar -
Complex
# rationalize -> Rational (9001.0) -
自身を Rational に変換します。
自身を Rational に変換します。
@param eps 許容する誤差。常に無視されます。
@raise RangeError 虚部が実数か、0 ではない場合に発生します。
//emlist[例][ruby]{
Complex(3).to_r # => (3/1)
Complex(3, 2).to_r # => RangeError
//} -
Complex
# rationalize(eps) -> Rational (9001.0) -
自身を Rational に変換します。
自身を Rational に変換します。
@param eps 許容する誤差。常に無視されます。
@raise RangeError 虚部が実数か、0 ではない場合に発生します。
//emlist[例][ruby]{
Complex(3).to_r # => (3/1)
Complex(3, 2).to_r # => RangeError
//} -
Complex
# real -> Numeric (9001.0) -
自身の実部を返します。
自身の実部を返します。
//emlist[例][ruby]{
Complex(3, 2).real # => 3
//} -
Complex
# real? -> false (9001.0) -
常に false を返します。
常に false を返します。
//emlist[例][ruby]{
(2+3i).real? # => false
(2+0i).real? # => false
//}
@see Numeric#real? -
Complex
# rect -> [Numeric , Numeric] (9001.0) -
実部と虚部を配列にして返します。
実部と虚部を配列にして返します。
//emlist[例][ruby]{
Complex(3).rect # => [3, 0]
Complex(3.5).rect # => [3.5, 0]
Complex(3, 2).rect # => [3, 2]
//}
@see Numeric#rect -
Complex
# rectangular -> [Numeric , Numeric] (9001.0) -
実部と虚部を配列にして返します。
実部と虚部を配列にして返します。
//emlist[例][ruby]{
Complex(3).rect # => [3, 0]
Complex(3.5).rect # => [3.5, 0]
Complex(3, 2).rect # => [3, 2]
//}
@see Numeric#rect -
Complex
# to _ c -> self (9001.0) -
self を返します。
self を返します。
//emlist[例][ruby]{
Complex(2).to_c # => (2+0i)
Complex(-8, 6).to_c # => (-8+6i)
//} -
Complex
# to _ f -> Float (9001.0) -
自身を Float に変換します。
自身を Float に変換します。
@raise RangeError 虚部が実数か、0 ではない場合に発生します。
//emlist[例][ruby]{
Complex(3).to_f # => 3.0
Complex(3.5).to_f # => 3.5
Complex(3, 2).to_f # => RangeError
//} -
Complex
# to _ i -> Integer (9001.0) -
自身を整数に変換します。
自身を整数に変換します。
@raise RangeError 虚部が実数か、0 ではない場合に発生します。
//emlist[例][ruby]{
Complex(3).to_i # => 3
Complex(3.5).to_i # => 3
Complex(3, 2).to_i # => RangeError
//} -
Complex
# to _ json(*args) -> String (9001.0) -
自身を JSON 形式の文字列に変換して返します。
自身を JSON 形式の文字列に変換して返します。
内部的にはハッシュにデータをセットしてから JSON::Generator::GeneratorMethods::Hash#to_json を呼び出しています。
@param args 使用しません。
//emlist[例][ruby]{
require 'json/add/complex'
Complex(2, 3).to_json # => "{\"json_class\":\"Complex\",\"r\":2,\"i\":3}"
//}
@see JSON::Generator::GeneratorMethods::Hash... -
Complex
# to _ r -> Rational (9001.0) -
自身を Rational に変換します。
自身を Rational に変換します。
@param eps 許容する誤差。常に無視されます。
@raise RangeError 虚部が実数か、0 ではない場合に発生します。
//emlist[例][ruby]{
Complex(3).to_r # => (3/1)
Complex(3, 2).to_r # => RangeError
//} -
Complex
# to _ s -> String (9001.0) -
自身を "実部 + 虚部i" 形式の文字列にして返します。
自身を "実部 + 虚部i" 形式の文字列にして返します。
//emlist[例][ruby]{
Complex(2).to_s # => "2+0i"
Complex('-8/6').to_s # => "-4/3+0i"
Complex('1/2i').to_s # => "0+1/2i"
Complex(0, Float::INFINITY).to_s # => "0+Infinity*i"
Complex(Float::NAN, Float::NAN).to_s... -
Ripper
:: Lexer # tokenize -> [String] (9001.0) -
自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
自身の持つ Ruby プログラムをトークンに分割し、そのリストを返します。
ライブラリ内部で使用します。 Ripper.tokenize を使用してください。 -
SignalException
# signm -> String (9001.0) -
self.message のエイリアスです。
self.message のエイリアスです。
//emlist[例][ruby]{
begin
Process.kill('HUP', Process.pid)
sleep
rescue SignalException => e
puts e.signm # => SIGHUP
end
//} -
SignalException
# signo -> Integer (9001.0) -
self のシグナル番号を返します。
self のシグナル番号を返します。
//emlist[例][ruby]{
p Signal.signame(1) # => "HUP"
begin
Process.kill('HUP', Process.pid)
sleep
rescue SignalException => e
p e.signo # => 1
end
//} -
字句構造 (9001.0)
-
字句構造 * identifier * comment * embed * reserved
字句構造
* identifier
* comment
* embed
* reserved
Rubyの現在の実装はASCIIキャラクタセットを用いています。アル
ファベットの大文字と小文字は区別されます。識別子と一部のリテ
ラルの途中を除いては任意の場所に空白文字やコメントを置くこと
ができます。空白文字とはスペース、タブ、垂直タブ、バックスペー
ス、キャリッジリターン、ラインフィード、改ページです。改行は行が明らかに次の
行に継続する時だけ、空白文字として、それ以外では文の区切りと
して解釈されます。
改行と認識されるのは、キャリッジリターン+ラインフィードかラインフ... -
CMath
. # acos(z) -> Float | Complex (301.0) -
z の逆余弦関数の値をラジアンで返します。
z の逆余弦関数の値をラジアンで返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # acosh(z) -> Float | Complex (301.0) -
z の逆双曲線余弦関数の値を返します。
z の逆双曲線余弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # asin(z) -> Float | Complex (301.0) -
z の逆正弦関数の値をラジアンで返します。
z の逆正弦関数の値をラジアンで返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # asinh(z) -> Float | Complex (301.0) -
z の逆双曲線正弦関数の値を返します。
z の逆双曲線正弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # atan(z) -> Float | Complex (301.0) -
z の逆正接関数の値をラジアンで返します。
z の逆正接関数の値をラジアンで返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # atan2(y , x) -> Float | Complex (301.0) -
y / x の逆正接関数の値を返します。
y / x の逆正接関数の値を返します。
@param y 数値
@param x 数値
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。 -
CMath
. # atanh(z) -> Float | Complex (301.0) -
z の逆双曲線正接関数の値を返します。
z の逆双曲線正接関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # cbrt(z) -> Float | Complex (301.0) -
z の立方根の内、主値を返します。
z の立方根の内、主値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.cbrt(-8)# => (1.0000000000000002+1.7320508075688772i)
//}
@see Complex#** -
CMath
. # cos(z) -> Float | Complex (301.0) -
z の余弦関数の値を返します。
z の余弦関数の値を返します。
@param z 数値(ラジアンで与えます)
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # cosh(z) -> Float | Complex (301.0) -
z の双曲線余弦関数の値を返します。
z の双曲線余弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # exp(z) -> Float | Complex (301.0) -
z の指数関数(Math::E の z 乗)の値を返します。
z の指数関数(Math::E の z 乗)の値を返します。
@param z Math::E を z 乗する数を指定します。
@raise TypeError z に数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.exp(Complex(0, 0))# => (1.0+0.0i)
CMath.exp(Complex(0, Math::PI)) # => (-1.0+1.2246063538223773e-16i)
CMath.exp(Complex(0, Math::PI / 2.0)) # => (6.1230... -
CMath
. # log(z) -> Float | Complex (301.0) -
z の対数を返します。
z の対数を返します。
@param z 真数を指定します。
@param b 底を指定します。省略した場合は自然対数を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.log(Complex(0, 0)) # => -Infinity+0.0i
CMath.log(0) # => -Infinity
//} -
CMath
. # log(z , b) -> Float | Complex (301.0) -
z の対数を返します。
z の対数を返します。
@param z 真数を指定します。
@param b 底を指定します。省略した場合は自然対数を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.log(Complex(0, 0)) # => -Infinity+0.0i
CMath.log(0) # => -Infinity
//} -
CMath
. # log10(z) -> Float | Complex (301.0) -
z の常用対数を返します。
z の常用対数を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # log2(z) -> Float | Complex (301.0) -
2 を底とする z の対数 (binary logarithm) を返します。
2 を底とする z の対数 (binary logarithm) を返します。
@param z 真数を指定します。
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # sin(z) -> Float | Complex (301.0) -
z の正弦関数の値を返します。
z の正弦関数の値を返します。
@param z 数値(ラジアンで与えます)
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # sinh(z) -> Float | Complex (301.0) -
z の双曲線正弦関数の値を返します。
z の双曲線正弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # sqrt(z) -> Float | Complex (301.0) -
z の平方根を返します。
z の平方根を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.sqrt(-1) # => (0+1.0i)
CMath.sqrt(1)# => 1.0
CMath.sqrt(Complex(0, 8))# => (2.0+2.0i)
//} -
CMath
. # tan(z) -> Float | Complex (301.0) -
z の正接関数の値を返します。
z の正接関数の値を返します。
@param z 数値(ラジアンで与えます)
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # tanh(z) -> Float | Complex (301.0) -
z の双曲線正接関数の値を返します。
z の双曲線正接関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
Matrix
# tr -> Integer | Float | Rational | Complex (301.0) -
トレース (trace) を返します。
トレース (trace) を返します。
行列のトレース (trace) とは、対角要素の和です。
//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}
trace は正方行列でのみ定義されます。
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します -
Matrix
# trace -> Integer | Float | Rational | Complex (301.0) -
トレース (trace) を返します。
トレース (trace) を返します。
行列のトレース (trace) とは、対角要素の和です。
//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}
trace は正方行列でのみ定義されます。
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します -
NilClass
# to _ c -> Complex (301.0) -
0+0i を返します。
0+0i を返します。
//emlist[例][ruby]{
nil.to_c # => (0+0i)
//} -
Numeric
# fdiv(other) -> Float | Complex (301.0) -
self を other で割った商を Float で返します。 ただし Complex が関わる場合は例外です。 その場合も成分は Float になります。
self を other で割った商を Float で返します。
ただし Complex が関わる場合は例外です。
その場合も成分は Float になります。
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@param other 自身を割る数を指定します。
//emlist[例][ruby]{
1.fdiv(3) #=> 0.3333333333333333
Complex(1, 1).fdiv 1 #=> (1.0+1.0i)
1.fdiv Complex(1, 1) #=> (0.5-0.5i)
//}
@see Num... -
Numeric
# i -> Complex (301.0) -
Complex(0, self) を返します。
Complex(0, self) を返します。
ただし、Complex オブジェクトでは利用できません。
//emlist[例][ruby]{
10.i # => (0+10i)
-10.i # => (0-10i)
(0.1).i # => (0+0.1i)
Rational(1, 2).i # => (0+(1/2)*i)
//} -
Numeric
# quo(other) -> Rational | Float | Complex (301.0) -
self を other で割った商を返します。 整商を得たい場合は Numeric#div を使ってください。
self を other で割った商を返します。
整商を得たい場合は Numeric#div を使ってください。
Numeric#fdiv が結果を Float で返すメソッドなのに対して quo はなるべく正確な数値を返すことを意図しています。
具体的には有理数の範囲に収まる計算では Rational の値を返します。
Float や Complex が関わるときはそれらのクラスになります。
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@param other 自身を割る数を指定します。
//emlist[例][ruby]{
1.quo(3)... -
Numeric
# to _ c -> Complex (301.0) -
自身を複素数 (Complex) に変換します。Complex(self, 0) を返します。
自身を複素数 (Complex) に変換します。Complex(self, 0) を返します。
//emlist[例][ruby]{
1.to_c # => (1+0i)
-1.to_c # => (-1+0i)
1.0.to_c # => (1.0+0i)
Rational(1, 2).to_c # => ((1/2)+0i)
//}
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。 -
String
# to _ c -> Complex (301.0) -
自身を複素数 (Complex) に変換した結果を返します。
自身を複素数 (Complex) に変換した結果を返します。
以下の形式を解析できます。i、j は大文字、小文字のどちらでも解析できます。
* 実部+虚部i
* 実部+虚部j
* 絶対値@偏角
それぞれの数値は以下のいずれかの形式で指定します。先頭の空白文字や複素
数値の後にある文字列は無視されます。また、数値オブジェクトと同様に各桁
の間に「_」を入れる事ができます。
* "1/3" のような分数の形式
* "0.3" のような10進数の形式
* "0.3E0" のような x.xEn の形式
自身が解析できない値であった場合は 0+0i を返します。
//emlis... -
static int here
_ document(NODE *here) (49.0) -
lex_strterm 形式の term に従ってヒアドキュメントを 終端行まで読み込む。
lex_strterm 形式の term に従ってヒアドキュメントを
終端行まで読み込む。 -
static int heredoc
_ identifier(void) (49.0) -
ヒアドキュメントの「<<」を既に読みこんだものと仮定して 開始記号を読みこみ、lex_strterm をセットします。 返り値は、読み込みに成功したときはシンボル、解析できないときは 0 です。
ヒアドキュメントの「<<」を既に読みこんだものと仮定して
開始記号を読みこみ、lex_strterm をセットします。
返り値は、読み込みに成功したときはシンボル、解析できないときは 0 です。 -
static int parse
_ string(NODE *quote) (49.0) -
lex_strterm 形式のノード quote の指示に従い、 文字列の終端または埋め込み式の始まりまで読みこみます。
lex_strterm 形式のノード quote の指示に従い、
文字列の終端または埋め込み式の始まりまで読みこみます。 -
static void heredoc
_ restore(NODE *here) (49.0) -
ヒアドキュメントの本体の読み込みに失敗したとき、開始記号 のある行を復帰します。here は lex_strterm です。
ヒアドキュメントの本体の読み込みに失敗したとき、開始記号
のある行を復帰します。here は lex_strterm です。 -
static struct kwtable * rb
_ reserved _ word(const char *str , unsigned int len) (37.0) -
長さ len の文字列 str が予約語であれば そのフラグテーブルを返します。str が予約語でなければ NULL を返します。
長さ len の文字列 str が予約語であれば
そのフラグテーブルを返します。str が予約語でなければ
NULL を返します。
struct kwtable {
char *name; /* 予約語の名前 */
int id[2]; /* 0: 非修飾型シンボル
1: 修飾型シンボル (kIF_MOD など) があれば
それを格納する。なければ id[0]...