Top


定義場所(file name)

hotspot/src/share/vm/prims/jvmtiImpl.cpp

名前(function name)

javaVFrame *VM_GetOrSetLocal::get_java_vframe() {

本体部(body)

  {- -------------------------------------------
  (1) VM_GetOrSetLocal::get_vframe() を呼んで
      指定されたフレームに対応する vframe を取得する.
      ---------------------------------------- -}

      vframe* vf = get_vframe();

  {- -------------------------------------------
  (1) 対応するフレームが無かった場合は NULL をリターン (JVMTI_ERROR_NO_MORE_FRAMES).
      ---------------------------------------- -}

      if (vf == NULL) {
        _result = JVMTI_ERROR_NO_MORE_FRAMES;
        return NULL;
      }

  {- -------------------------------------------
  (1) (変数宣言など)
      ---------------------------------------- -}

      javaVFrame *jvf = (javaVFrame*)vf;

  {- -------------------------------------------
  (1) 対応するフレームが Java メソッドのフレームでなければ
      NULL をリターン (JVMTI_ERROR_OPAQUE_FRAME).
      ---------------------------------------- -}

      if (!vf->is_java_frame()) {
        _result = JVMTI_ERROR_OPAQUE_FRAME;
        return NULL;
      }

  {- -------------------------------------------
  (1) 結果をリターン
      ---------------------------------------- -}

      return jvf;
    }

This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.