Interface ASTTransformation<N,E,T,B,TB extends B,S,I,QI,R extends RelatedExpression<N,T,B,TB,S,QI,R>,A extends ASTBasedAnaphora<N,E,T,B,TB,S,I,QI,R,A>>
- Type Parameters:
N- The node type in the ASTE- The expression typeT- The type typeB- The binding typeTB- The type binding typeS- The scope type (optional)I- The type used to represent identifiersQI- The type used to represent qualified identifiersR- The sub-type of related expression to useA- The sub-type of AST-based anaphora to use
public interface ASTTransformation<N,E,T,B,TB extends B,S,I,QI,R extends RelatedExpression<N,T,B,TB,S,QI,R>,A extends ASTBasedAnaphora<N,E,T,B,TB,S,I,QI,R,A>>
An AST transformation.
-
Method Summary
Modifier and Type Method Description Aperform(A preliminaryAnaphora)Perform the transformation and convert the given preliminary anaphora (that is based on the AST before the transformation) into a potential anaphora that is based on the AST after the transformation (which might contain new nodes).
-
Method Details
-
perform
Perform the transformation and convert the given preliminary anaphora (that is based on the AST before the transformation) into a potential anaphora that is based on the AST after the transformation (which might contain new nodes).The relationship between the transformation and preliminary anaphora depends on the kind of transformation. I.e. a certain transformation might introduce a node that exchanges the related expression from the preliminary anaphora by a new node that is eventually used in the potential anaphora while another transformation might replace other nodes.
The potential anaphor uses the same strategies as the preliminary anaphora, though.
TODO: error handling: what shall happen if the transformation fails?
- Parameters:
preliminaryAnaphora- the preliminary anaphora- Returns:
- a potential anaphora relation
-