edu.cmu.cs.crystal.annotations
Interface ICrystalAnnotation

All Known Implementing Classes:
CrystalAnnotation

public interface ICrystalAnnotation

Interface for accessing annotations through the Crystal annotation database. To get Crystal to recognize an annotation that an analysis is interested in, use the extension-point edu.cmu.cs.crystal.CrystalAnnotation in plugin.xml and provide an implementation of ICrystalAnnotation that will parse your annotation. The implementation @link{CrystalAnnotation} will do very simple parsing.

Author:
ciera

Method Summary
 String getName()
          Returns the fully qualified name of the original annotation class used in the source.
 Object getObject(String key)
          Returns the value of an annotation parameter with the given name.
 void setName(String name)
          The annotation database will use this method to populate the fully qualified name of the original annotation class.
 void setObject(String key, Object value)
          The annotation database will use this method to populate the explicit and implicit parameters of an annotation instance present in the analyzed source code.
 

Method Detail

getName

String getName()
Returns the fully qualified name of the original annotation class used in the source.

Returns:
The fully qualified name of the original annotation class used in the source.

setName

void setName(String name)
The annotation database will use this method to populate the fully qualified name of the original annotation class.

Parameters:
name - The fully qualified name of the original annotation class used in the source.
See Also:
getName()

getObject

Object getObject(String key)
Returns the value of an annotation parameter with the given name. Values are represented as follows:

Parameters:
key - Name of the annotation parameter, e.g., "value".
Returns:
The value of an annotation parameter with the given name or null if the parameter is unknown.
See Also:
IMemberValuePairBinding.getValue()

setObject

void setObject(String key,
               Object value)
The annotation database will use this method to populate the explicit and implicit parameters of an annotation instance present in the analyzed source code. The values set must conform to the rules for representing parameter values described in getObject(String)

Parameters:
key - Parameter name.
value - Parameter value.