001package de.monochromata.anaphors.ast; 002 003import de.monochromata.anaphors.ast.relatedexp.RelatedExpression; 004 005/** 006 * 007 * @param <N> The node type in the AST 008 * @param <E> The expression type 009 * @param <T> The type type 010 * @param <B> The binding type 011 * @param <TB> The type binding type 012 * @param <S> The scope type (optional) 013 * @param <I> The type used to represent identifiers 014 * @param <QI> The type used to represent qualified identifiers 015 * @param <R> The sub-type of related expression to use 016 * @param <A> The sub-type of AST-based anaphora to use 017 */ 018public interface IndirectAnaphora<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>> 019 extends ASTBasedAnaphora<N, E, T, B, TB, S, I, QI, R, A> { 020 021 /** 022 * An alias for {@link #getRelatedExpression()}. 023 */ 024 default R getAnchor() { 025 return getRelatedExpression(); 026 } 027 028 public abstract String getUnderspecifiedRelation(); 029 030}