All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Search JAR files by class name

Source code of the class ContextBasedMatcher.java part of aspectjweaver version 1.8.9

Go to download Show more of this group Show artifacts with the name aspectjweaver
        /* *******************************************************************
 * Copyright (c) 2005 Contributors.
 * All rights reserved. 
 * This program and the accompanying materials are made available 
 * under the terms of the Eclipse Public License v1.0 
 * which accompanies this distribution and is available at 
 * http://eclipse.org/legal/epl-v10.html 
 *  
 * Contributors: 
 *   Adrian Colyer			Initial implementation
 * ******************************************************************/
package org.aspectj.weaver.tools;

/**
 * Pointcut expression interface for pointcut
 * expressions returned by a
 * PointcutDesignatorHandler. Provides an additional
 * matching method for matching based on context
 * information over and above that normally used
 * by AspectJ.
 * 
 * @see MatchingContext
 *
 */
public interface ContextBasedMatcher {

	/**
	 * return true iff this matcher could ever match
	 * a join point in the given type
	 * @deprecated use couldMatchJoinPointsInType(Class,MatchingContext) instead
	 */
	boolean couldMatchJoinPointsInType(Class aClass);
	
	/**
	 * return true iff this matcher could ever match
	 * a join point in the given type, may also use any
	 * match context information available
	 * @since 1.5.1
	 */
	boolean couldMatchJoinPointsInType(Class aClass, MatchingContext matchContext);
	
	/**
	 * return true if matchesStatically can ever return
	 * FuzzyBoolean.MAYBE (necessitating a per-join point test
	 * to determine matching at a given join point).
	 */
	boolean mayNeedDynamicTest();

	/**
	 * Return FuzzyBoolean.YES if a join point with the given
	 * matching context is always matched. 
	 * Return FuzzyBoolean.NO if a join point with the given
	 * matching context is never matched.
	 * Return FuzzyBoolean.MAYBE if a match cannot be determined
	 * statically (whilst generating a ShadowMatch), and must
	 * be determined on a per-join point basis. 
	 */
	FuzzyBoolean matchesStatically(MatchingContext matchContext);

	/**
	 * Called during processing of ShadowMatch.matchesJoinPoint
	 * when matchesStatically returned FuzzyBoolean.MAYBE. 
	 */
	boolean matchesDynamically(MatchingContext matchContext);
}




© 2018 Weber Informatics LLC