これらは, ADLC 内で使用される写像クラス(Dictionary クラス). key と value の対応を記録する (See: here for details).
((cite: hotspot/src/share/vm/libadt/dict.hpp))
// These dictionaries define a key-value mapping. They can be inserted to,
// searched or deleted from. They grow and shrink as needed. The key is a
// pointer to something (or anything which can be stored in a pointer). A
// key comparison routine determines if two keys are equal or not. A hash
// function can be provided; if it's not provided the key itself is used
// instead. A nice string hash function is included.
key と value の対応を記録する写像クラス(Dictionary クラス).
((cite: hotspot/src/share/vm/libadt/dict.hpp))
class Dict : public ResourceObj { // Dictionary structure
See: here for details
Dict クラスの中身を処理するためのイテレータクラス.
以下のように使う.
for( DictI i(dict); i.test(); ++i ) { body = i.key; body = i.value;}
((cite: hotspot/src/share/vm/libadt/dict.hpp))
//------------------------------Iteration--------------------------------------
// The class of dictionary iterators. Fails in the presences of modifications
// to the dictionary during iteration (including searches).
// Usage: for( DictI i(dict); i.test(); ++i ) { body = i.key; body = i.value;}
class DictI {
See: here for details
Dict クラス内で使用される補助クラス. このクラスを用いてハッシュが実装されている.
((cite: hotspot/src/share/vm/libadt/dict.cpp))
//------------------------------bucket---------------------------------------
class bucket : public ResourceObj {
See: here for details
This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.