< prev index next >

src/hotspot/share/classfile/classFileParser.hpp

Print this page

        

*** 34,43 **** --- 34,44 ---- class Annotations; template <typename T> class Array; class ClassFileStream; class ClassLoaderData; + class ClassInstanceInfo; class CompressedLineNumberWriteStream; class ConstMethod; class FieldInfo; template <typename T> class GrowableArray;
*** 76,90 **** private: // Potentially unaligned pointer to various 16-bit entries in the class file typedef void unsafe_u2; const ClassFileStream* _stream; // Actual input stream - const Symbol* _requested_name; Symbol* _class_name; mutable ClassLoaderData* _loader_data; const InstanceKlass* _unsafe_anonymous_host; GrowableArray<Handle>* _cp_patches; // overrides for CP entries int _num_patched_klasses; int _max_num_patched_klasses; int _orig_cp_size; int _first_patched_klass_resolved_index; --- 77,92 ---- private: // Potentially unaligned pointer to various 16-bit entries in the class file typedef void unsafe_u2; const ClassFileStream* _stream; // Actual input stream Symbol* _class_name; mutable ClassLoaderData* _loader_data; const InstanceKlass* _unsafe_anonymous_host; GrowableArray<Handle>* _cp_patches; // overrides for CP entries + const bool _is_hidden; + const bool _can_access_vm_annotations; int _num_patched_klasses; int _max_num_patched_klasses; int _orig_cp_size; int _first_patched_klass_resolved_index;
*** 173,183 **** TRAPS); void prepend_host_package_name(const InstanceKlass* unsafe_anonymous_host, TRAPS); void fix_unsafe_anonymous_class_name(TRAPS); ! void fill_instance_klass(InstanceKlass* ik, bool cf_changed_in_CFLH, TRAPS); void set_klass(InstanceKlass* instance); void set_class_bad_constant_seen(short bad_constant); short class_bad_constant_seen() { return _bad_constant_seen; } void set_class_synthetic_flag(bool x) { _synthetic_flag = x; } --- 175,187 ---- TRAPS); void prepend_host_package_name(const InstanceKlass* unsafe_anonymous_host, TRAPS); void fix_unsafe_anonymous_class_name(TRAPS); ! void fill_instance_klass(InstanceKlass* ik, bool cf_changed_in_CFLH, ! const ClassInstanceInfo& cl_inst_info, TRAPS); ! void set_klass(InstanceKlass* instance); void set_class_bad_constant_seen(short bad_constant); short class_bad_constant_seen() { return _bad_constant_seen; } void set_class_synthetic_flag(bool x) { _synthetic_flag = x; }
*** 485,509 **** const FieldAllocationCount* fac, const ClassAnnotationCollector* parsed_annotations, FieldLayoutInfo* info, TRAPS); - void update_class_name(Symbol* new_name); - public: ClassFileParser(ClassFileStream* stream, Symbol* name, ClassLoaderData* loader_data, Handle protection_domain, const InstanceKlass* unsafe_anonymous_host, GrowableArray<Handle>* cp_patches, Publicity pub_level, TRAPS); ~ClassFileParser(); ! InstanceKlass* create_instance_klass(bool cf_changed_in_CFLH, TRAPS); const ClassFileStream* clone_stream() const; void set_klass_to_deallocate(InstanceKlass* klass); --- 489,513 ---- const FieldAllocationCount* fac, const ClassAnnotationCollector* parsed_annotations, FieldLayoutInfo* info, TRAPS); public: ClassFileParser(ClassFileStream* stream, Symbol* name, ClassLoaderData* loader_data, Handle protection_domain, const InstanceKlass* unsafe_anonymous_host, GrowableArray<Handle>* cp_patches, + const bool is_hidden, + const bool can_access_vm_annotations, Publicity pub_level, TRAPS); ~ClassFileParser(); ! InstanceKlass* create_instance_klass(bool cf_changed_in_CFLH, const ClassInstanceInfo& cl_inst_info, TRAPS); const ClassFileStream* clone_stream() const; void set_klass_to_deallocate(InstanceKlass* klass);
*** 515,524 **** --- 519,529 ---- int itable_size() const { return _itable_size; } u2 this_class_index() const { return _this_class_index; } bool is_unsafe_anonymous() const { return _unsafe_anonymous_host != NULL; } + bool is_hidden() const { return _is_hidden; } bool is_interface() const { return _access_flags.is_interface(); } const InstanceKlass* unsafe_anonymous_host() const { return _unsafe_anonymous_host; } const GrowableArray<Handle>* cp_patches() const { return _cp_patches; } ClassLoaderData* loader_data() const { return _loader_data; }
< prev index next >