Package org.sosy_lab.java_smt.basicimpl
Class FunctionDeclarationImpl<F extends Formula,T>
- java.lang.Object
-
- org.sosy_lab.java_smt.basicimpl.FunctionDeclarationImpl<F,T>
-
- All Implemented Interfaces:
FunctionDeclaration<F>
@Immutable(containerOf="T") public final class FunctionDeclarationImpl<F extends Formula,T> extends Object implements FunctionDeclaration<F>
Declaration of a function.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(@Nullable Object o)List<FormulaType<?>>getArgumentTypes()FunctionDeclarationKindgetKind()Get type of the declaration.StringgetName()Name of the function.TgetSolverDeclaration()FormulaType<F>getType()inthashCode()static <F extends Formula,T>
FunctionDeclaration<F>of(String name, FunctionDeclarationKind kind, List<FormulaType<?>> pArgumentTypes, FormulaType<F> pReturnType, T pDeclaration)StringtoString()
-
-
-
Method Detail
-
of
public static <F extends Formula,T> FunctionDeclaration<F> of(String name, FunctionDeclarationKind kind, List<FormulaType<?>> pArgumentTypes, FormulaType<F> pReturnType, T pDeclaration)
-
getKind
public FunctionDeclarationKind getKind()
Get type of the declaration.- Specified by:
getKindin interfaceFunctionDeclaration<F extends Formula>- Returns:
- Type of the function (LT / GT / UF / etc...).
-
getSolverDeclaration
public T getSolverDeclaration()
- Returns:
- Solver-specific representation of the function declaration.
-
getName
public String getName()
Name of the function. For variables and UF's, it's the user-supplied name. For default theories, it is the operator name (e.g."ITE"for the if-then-else operator.)- Specified by:
getNamein interfaceFunctionDeclaration<F extends Formula>- Returns:
- Name of the function (UF name / "LT" / etc...).
-
getArgumentTypes
public List<FormulaType<?>> getArgumentTypes()
- Specified by:
getArgumentTypesin interfaceFunctionDeclaration<F extends Formula>- Returns:
- Sorts of the arguments.
-
getType
public FormulaType<F> getType()
- Specified by:
getTypein interfaceFunctionDeclaration<F extends Formula>- Returns:
- Sort of the function output.
-
-