< prev index next >

src/hotspot/share/cds/classListParser.hpp

Print this page
@@ -23,10 +23,11 @@
   */
  
  #ifndef SHARE_CDS_CLASSLISTPARSER_HPP
  #define SHARE_CDS_CLASSLISTPARSER_HPP
  
+ #include "interpreter/bytecodes.hpp"
  #include "utilities/exceptions.hpp"
  #include "utilities/globalDefinitions.hpp"
  #include "utilities/growableArray.hpp"
  #include "utilities/istream.hpp"
  #include "utilities/resizeableResourceHash.hpp"

@@ -64,14 +65,20 @@
    }
  };
  
  class ClassListParser : public StackObj {
    static const char* CONSTANT_POOL_TAG;
+   static const char* DYNAMIC_PROXY_TAG;
    static const char* LAMBDA_FORM_TAG;
    static const char* LAMBDA_PROXY_TAG;
  
  public:
+   static const char* ARRAY_TAG;
+ 
+   static const char* CLASS_REFLECTION_DATA_TAG;
+   static const char* LOADER_NEGATIVE_CACHE_TAG;
+ 
    enum ParseMode {
      _parse_all,
      _parse_lambda_forms_invokers_only,
    };
  

@@ -126,19 +133,24 @@
    void clean_up_input_line();
    void read_class_name_and_attributes();
    void parse_class_name_and_attributes(TRAPS);
    Klass* load_current_class(Symbol* class_name_symbol, TRAPS);
    void parse_constant_pool_tag();
+   void parse_class_reflection_data_tag();
+   void parse_dynamic_proxy_tag();
+   void parse_loader_negative_cache_tag();
+   void parse_array_dimension_tag();
  
    size_t lineno() { return _input_stream.lineno(); }
    FILE* do_open(const char* file);
    ClassListParser(const char* file, ParseMode _parse_mode);
    ~ClassListParser();
    void print_diagnostic_info(outputStream* st, const char* msg, va_list ap) ATTRIBUTE_PRINTF(3, 0);
    void print_diagnostic_info(outputStream* st, const char* msg, ...) ATTRIBUTE_PRINTF(3, 0);
    void constant_pool_resolution_warning(const char* msg, ...) ATTRIBUTE_PRINTF(2, 0);
    void error(const char* msg, ...) ATTRIBUTE_PRINTF(2, 0);
+   oop loader_from_type(const char* loader_name);
  
  public:
    static void parse_classlist(const char* classlist_path, ParseMode parse_mode, TRAPS) {
      ClassListParser parser(classlist_path, parse_mode);
      parser.parse(THREAD);
< prev index next >