Loading... (original) (raw)

Clean up / refactoring objectives:

- allow for class parsing implementation reuse

- decouple class parsing and Klass* creation

- Decouple JVMTI class file load hook from ClassFileParser

- Introduce stricter constness for ClassFileStream/ClassFileParser (in order to assist future refactoring) (constness will affect contextual code)

- ClassFileParser to act as RAII for resource management

- ClassFileParser to be used as an object/component, simplifying the Klass/InstanceKlass/ArrayKlass creation code

- Some optimizations can be accomplished in constructors, esp taking advantage of the infrastructure provided by MetaspaceObj allocation "calloc" equivalent memory

- clean up artifacts (handles etc)

- maintain class load performance