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

org.pure4j.model.ProjectModel Maven / Gradle / Ivy

Go to download

Parses Byte-code to check the purity semantics defined using pure4j-core annotations

The newest version!
package org.pure4j.model;

import java.util.List;
import java.util.Set;

/**
 * Returns information about the java project which can only be ascertained by bytecode scanning 
 * the project structure.
 * 
 * @author moffatr
 *
 */
public interface ProjectModel {

    public List getCalls(MemberHandle m);
    
    public Set getCalledBy(MemberHandle m);
    
    public Set getSubclasses(String className);
    
    public Set getClassesWithAnnotation(String annotationName);
    
    public Set getMembersWithAnnotation(String annotationName);
    
    public Set getDependsOnClasses(String className);
    
    public Set getDependedOnClasses(String className);

    public Set getDependsOnPackages(PackageHandle packageName);
    
    public Set getDependedOnPackages(PackageHandle packageName);    

    public boolean withinModel(String className);
    
    public boolean packageWithinModel(String packageName);
    
    public Set getClassesInPackage(String packageName);
    
    public Set getAllClasses();
    
    public Set getAllDeclaredMethods();

    public Set getDeclaredMethods(String className);
    
    public Set getAnnotationReferences(String className);
    
    public CallInfo getOpcodes(MemberHandle ch);
    
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy