Integer
組込みオブジェクトこの章では組込み変数領域が初めから備えている
Integer
組込みオブジェクトを定義する。
Integer
オブジェクトは、スクリプトで扱われる整数を表すオブジェクトである。
Integer
のメンバprototype
Real.prototype
を準プロトタイプとするオブジェクト。name
"Integer"
zero
Integer
オブジェクトone
Integer
オブジェクトand
メソッドInteger
オブジェクトならば
(引数の個数が 0 の場合を含む)、次の動作を行う:
Integer
オブジェクト]]
を返す。Integer
オブジェクトでないオブジェクトが含まれている場合の
関数呼出しでの動作は規定しない。or
メソッドInteger
オブジェクトならば
(引数の個数が 0 の場合を含む)、次の動作を行う:
Integer
オブジェクト]]
を返す。Integer
オブジェクトでないオブジェクトが含まれている場合の
関数呼出しでの動作は規定しない。xor
メソッドInteger
オブジェクトならば
(引数の個数が 0 の場合を含む)、次の動作を行う:
Integer
オブジェクト]]
を返す。Integer
オブジェクトでないオブジェクトが含まれている場合の
関数呼出しでの動作は規定しない。not
メソッドInteger
オブジェクトを引数として関数として呼出されると、次の動作を行う:
Integer
オブジェクト]]
を返す。shiftLeft
メソッドInteger
オブジェクトを引数として関数として呼出されると、次の動作を行う:
Integer
オブジェクト]]
を返す。shiftRight
メソッドInteger
オブジェクトを引数として関数として呼出されると、次の動作を行う:
Integer
オブジェクト]]
を返す。Integer
の内部メンバ$prototype
Type.prototype
Integer
の関数としての呼出しInteger
は関数として呼出し可能である。一つのオブジェクト
a を引数として関数として呼出されると次の処理を実行する:
Integer
オブジェクトならば、[[a]]
を返す。Rational
オブジェクトならば、引数を Integer
に縮小変換し、その結果を値とする正常終了の結果を返す。Float
オブジェクトならば、引数を Integer
に縮小変換し、その結果を値とする正常終了の結果を返す。Integer
オブジェクトを r として、[[r]]
を返す。文字列が数値として解釈できない場合は、新しい ArgumentError
のインスタンスを投げる。
文字列の解釈の方法は実行環境に任せる。呼出しにおける引数の個数が一つでない場合の動作は規定しない。
Integer
オブジェクトのプロパティInteger
オブジェクトは以下のプロパティを持つ。ただし、
Integer.prototype
やその準プロトタイプのプロパティが
スクリプトの実行によって変更された場合は、この限りではない。
and
メソッドMath$and
メソッドInteger
オブジェクトならば、その @this 値と全ての引数を引数として Integer.and
を関数として呼出し、その結果を返す。or
メソッドMath$or
メソッドInteger
オブジェクトならば、その @this 値と全ての引数を引数として Integer.or
を関数として呼出し、その結果を返す。xor
メソッドMath$xor
メソッドInteger
オブジェクトならば、その @this 値と全ての引数を引数として Integer.xor
を関数として呼出し、その結果を返す。not
メソッドMath$not
メソッドInteger
オブジェクトであり、引数の個数が 0 ならば、その @this
値を引数として Integer.not
を関数として呼出し、その結果を返す。shiftLeft
メソッドInteger
オブジェクトならば、その @this 値と引数を引数として Integer.shiftLeft
を関数として呼出し、その結果を返す。shiftRight
メソッドInteger
オブジェクトならば、その @this 値と引数を引数として Integer.shiftRight
を関数として呼出し、その結果を返す。toString
メソッドInteger
オブジェクトを @this
値としてこのメソッドを呼出すと、渡された @this 値を文字列オブジェクトに変換したものを結果として返す。
文字列への変換の方法は実行環境に任せる。Real
オブジェクトを Integer
オブジェクトに変換する操作 real-to-int は、一つの
Real
オブジェクト v に対して以下の動作を行い、一つの
整数または特殊な値 null を結果として返す:
Integer
オブジェクトならば v
が表している整数を返す。Rational
オブジェクトでその分母が 1 ならば
その分子の値を返す。分母が 1 でなければ null を返す。Float
オブジェクトならば
Integer
オブジェクトのうち、v
と比較演算 $equal
を行って結果が Boolean.true
となるものは、整数 i
を表しているもののみである。Integer
への縮小変換では、
値は必ず整数に変換されるが、real-to-int
では元の値が整数でない場合には変換は行われない。