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

org.aspectj.ajdt.internal.compiler.ICompilerAdapter Maven / Gradle / Ivy

// AspectJ Extension
/*******************************************************************************
 * Copyright (c) 2004 IBM Corporation and others.
 * All rights reserved.
 * This program and the accompanying materials are made available
 * under the terms of the Eclipse Public License v 2.0
 * which accompanies this distribution, and is available at
 * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.aspectj.ajdt.internal.compiler;

import org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration;
import org.aspectj.org.eclipse.jdt.internal.compiler.env.ICompilationUnit;

/**
 * An ICompilerAdapter will be called by the compiler at strategic
 * points during compilation, allowing the adapter to perform additional
 * processing as required.
 */
public interface ICompilerAdapter {
	
	void afterDietParsing(CompilationUnitDeclaration[] units);
	
	void beforeCompiling(ICompilationUnit[] sourceUnits);
	void afterCompiling(CompilationUnitDeclaration[] units);
	
	void beforeProcessing(CompilationUnitDeclaration unit);
	void afterProcessing(CompilationUnitDeclaration unit, int unitIndex);
	
	void beforeResolving(CompilationUnitDeclaration unit);
	void afterResolving(CompilationUnitDeclaration unit);

	void beforeAnalysing(CompilationUnitDeclaration unit);
	void afterAnalysing(CompilationUnitDeclaration unit);
	
	void beforeGenerating(CompilationUnitDeclaration unit);
	void afterGenerating(CompilationUnitDeclaration unit);
	
//	void beforeResolving(CompilationUnitDeclaration unit,
//						 ICompilationUnit sourceUnit,
//						 boolean verifyMethods,
//						 boolean analyzeCode,
//						 boolean generateCode);
//	void afterResolving(CompilationUnitDeclaration unit,
//						ICompilationUnit sourceUnit,
//						boolean verifyMethods,
//						boolean analyzeCode,
//						boolean generateCode);		
}


// End AspectJ Extension




© 2015 - 2024 Weber Informatics LLC | Privacy Policy