[あすかぜ・ねっと]あすかぜ・ねっとその他CIL Opcode > unbox.any

unbox.any - convert boxed type to value

CIL フォーマット

A5 (T) / unbox.any (typeTok)

スタック

..., obj → ..., value or obj

詳細

ボックス化された値型に適用した場合、obj に含まれる値を抽出します。 これは unbox と ldobj を順に実行するのと同じです。 参照型に適用した場合、castclass と同じ効果となります。

typeTok が GenericParam の場合、 実行時のふるまいはパラメータの実際のインスタンス化によって決定されます。

Exception

obj がボックス化された値でも参照型でもない場合、 typeTok が Nullable<T> でかつ obj がボックス化された T でない場合、 もしくは obj に含まれる値の型が typeTok と代入互換性がない場合には、 InvalidCastException が発生します。

obj が null であり、typeTok が null 許容型でない場合、 NullReferenceException が発生します。

Menu

Copyright (C) 2004-2009 asukaze, Some Rights Reserved.
Last Update: 2009/06/07
mail (at) asukaze.net