All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.qbicc.interpreter.VmClassLoader Maven / Gradle / Ivy

There is a newer version: 0.77.0
Show newest version
package org.qbicc.interpreter;


import org.qbicc.context.ClassContext;
import org.qbicc.type.definition.LoadedTypeDefinition;

/**
 *
 */
public interface VmClassLoader extends VmObject {
    ClassContext getClassContext();

    /**
     * Get the name of this class loader.
     *
     * @return the class loader name (not {@code null})
     */
    String getName();

    VmClass loadClass(String name) throws Thrown;

    VmClass defineClass(VmString name, VmArray content, VmObject protectionDomain) throws Thrown;

    /**
     * Define a loaded class.
     *
     * @param definition the class definition (must not be {@code null})
     * @return the defined class object (not {@code null})
     */
    VmClass getOrDefineClass(LoadedTypeDefinition definition);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy