/**
 * @license.text@
 */
package com.hammurapi.common;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * Location of source of particular type for generated Java classes. This annotation is used
 * for debugging purposes.
 * @author Pavel Vlasov
 *
 */
@Retention(RetentionPolicy.RUNTIME)
@interface Location {
			
	/**
	 * @return Source artifact type, e.g. rule set file, or flow definition.
	 */
	String type();
	
	/**
	 * @return Source path.
	 */
	String path();
	
	/**
	 * @return Source comment.
	 */
	String comment();
	
	/**
	 * @return Line number.
	 */
	int line() default 0;
	
	/**
	 * @return Column number.
	 */
	int col() default 0;
	
}