< prev index next >
src/hotspot/share/classfile/packageEntry.hpp
Print this page
@@ -34,10 +34,11 @@
#include "utilities/ostream.hpp"
#if INCLUDE_JFR
#include "jfr/support/jfrTraceIdExtension.hpp"
#endif
+template <class T> class Array;
// A PackageEntry basically represents a Java package. It contains:
// - Symbol* containing the package's name.
// - ModuleEntry* for this package's containing module.
// - a field indicating if the package is exported unqualifiedly or to all
@@ -215,10 +216,17 @@
void delete_qualified_exports();
void print(outputStream* st = tty);
void verify();
+#if INCLUDE_CDS_JAVA_HEAP
+ PackageEntry* allocate_archived_entry() const;
+ void init_as_archived_entry();
+ static PackageEntry* get_archived_entry(PackageEntry* orig_entry);
+ void load_from_archive();
+#endif
+
static int max_index_for_defined_in_class_path() {
return sizeof(int) * BitsPerByte;
}
bool is_defined_by_cds_in_class_path(int idx) const {
@@ -293,8 +301,14 @@
// purge dead weak references out of exported list
void purge_all_package_exports();
void print(outputStream* st = tty);
void verify();
+
+#if INCLUDE_CDS_JAVA_HEAP
+ Array<PackageEntry*>* allocate_archived_entries();
+ void init_archived_entries(Array<PackageEntry*>* archived_packages);
+ void load_archived_entries(Array<PackageEntry*>* archived_packages);
+#endif
};
#endif // SHARE_CLASSFILE_PACKAGEENTRY_HPP
< prev index next >