Top


定義場所(file name)

hotspot/src/share/vm/interpreter/linkResolver.cpp

名前(function name)

void LinkResolver::resolve_interface_call(CallInfo& result, Handle recv, KlassHandle recv_klass, KlassHandle resolved_klass,
                                          Symbol* method_name, Symbol* method_signature, KlassHandle current_klass,
                                          bool check_access, bool check_null_and_abstract, TRAPS) {

本体部(body)

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

      methodHandle resolved_method;

  {- -------------------------------------------
  (1) LinkResolver::linktime_resolve_interface_method() を呼んで, 
      対象メソッドの解決処理を行う.
      ---------------------------------------- -}

      linktime_resolve_interface_method(resolved_method, resolved_klass, method_name, method_signature, current_klass, check_access, CHECK);

  {- -------------------------------------------
  (1) LinkResolver::runtime_resolve_interface_method() を呼んで, 
      解決結果をチェックし, 問題なければ result 引数に結果をセットする.
      ---------------------------------------- -}

      runtime_resolve_interface_method(result, resolved_method, resolved_klass, recv, recv_klass, check_null_and_abstract, CHECK);
    }

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