public abstract class AbstractSortedOperator extends AbstractOperator implements SortedOperator, Sorted
Modifier and Type | Field and Description |
---|---|
private ImmutableArray<Sort> |
argSorts |
private static ImmutableArray<Sort> |
EMPTY_SORT_LIST |
private Sort |
sort |
Modifier | Constructor and Description |
---|---|
protected |
AbstractSortedOperator(Name name,
ImmutableArray<Sort> argSorts,
Sort sort,
boolean isRigid) |
protected |
AbstractSortedOperator(Name name,
ImmutableArray<Sort> argSorts,
Sort sort,
ImmutableArray<java.lang.Boolean> whereToBind,
boolean isRigid) |
protected |
AbstractSortedOperator(Name name,
Sort[] argSorts,
Sort sort,
boolean isRigid) |
protected |
AbstractSortedOperator(Name name,
Sort[] argSorts,
Sort sort,
java.lang.Boolean[] whereToBind,
boolean isRigid) |
protected |
AbstractSortedOperator(Name name,
Sort sort,
boolean isRigid) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
additionalValidTopLevel(Term term)
Allows subclasses to impose custom demands on what constitutes a
valid term using the operator represented by the subclass.
|
protected boolean |
additionalValidTopLevel2(Term term)
Allows subclasses to impose custom demands on what constitutes a
valid term using the operator represented by the subclass.
|
Sort |
argSort(int i) |
ImmutableArray<Sort> |
argSorts() |
private boolean |
possibleSub(int at,
Term possibleSub)
checks if a given Term could be subterm (at the at'th subterm
position) of a term with this function at its top level.
|
Sort |
sort() |
Sort |
sort(ImmutableArray<Term> terms)
Determines the sort of the
Term if it would be created using this
Operator as top level operator and the given terms as sub terms. |
arity, bindVarsAt, isRigid, name, toString, validTopLevel, whereToBind
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
arity, bindVarsAt, isRigid, validTopLevel
private static final ImmutableArray<Sort> EMPTY_SORT_LIST
private final Sort sort
private final ImmutableArray<Sort> argSorts
protected AbstractSortedOperator(Name name, ImmutableArray<Sort> argSorts, Sort sort, ImmutableArray<java.lang.Boolean> whereToBind, boolean isRigid)
protected AbstractSortedOperator(Name name, Sort[] argSorts, Sort sort, java.lang.Boolean[] whereToBind, boolean isRigid)
protected AbstractSortedOperator(Name name, ImmutableArray<Sort> argSorts, Sort sort, boolean isRigid)
protected AbstractSortedOperator(Name name, Sort[] argSorts, Sort sort, boolean isRigid)
public final Sort sort(ImmutableArray<Term> terms)
Operator
Term
if it would be created using this
Operator as top level operator and the given terms as sub terms. The
assumption that the constructed term would be allowed is not checked.private boolean possibleSub(int at, Term possibleSub)
at
- theposition of the term where this method should check
the validity.possibleSub
- the subterm to be ckecked.protected boolean additionalValidTopLevel2(Term term)
protected final boolean additionalValidTopLevel(Term term)
AbstractOperator
additionalValidTopLevel
in class AbstractOperator
public final Sort argSort(int i)
argSort
in interface SortedOperator
public final ImmutableArray<Sort> argSorts()
argSorts
in interface SortedOperator
public final Sort sort()
sort
in interface SortedOperator
sort
in interface Sorted