-
- All Implemented Interfaces:
-
it.unibo.alchemist.model.interfaces.Dependency
,it.unibo.alchemist.model.interfaces.Molecule
,java.io.Serializable
,java.lang.Comparable
,java.lang.Iterable
public interface ILsaMolecule implements Molecule, Iterable<IExpression>, Comparable<ILsaMolecule>
-
-
Method Summary
Modifier and Type Method Description abstract List<IExpression>
allocateVar(Map<HashString, ITreeNode<out Object>> matches)
abstract int
argsNumber()
abstract boolean
equals(Object mol)
abstract ILsaMolecule
generalize()
abstract IExpression
getArg(int i)
abstract boolean
hasDuplicateVariables()
abstract boolean
isIdenticalTo(ILsaMolecule mol)
abstract boolean
isIstance()
abstract boolean
matches(ILsaMolecule mol)
abstract boolean
matches(List<out IExpression> mol, boolean duplicateVariables)
abstract boolean
moreGenericOf(ILsaMolecule mol)
abstract int
size()
abstract HashString
toHashString()
abstract String
toString()
-
Methods inherited from class it.unibo.alchemist.model.interfaces.Molecule
getName
-
Methods inherited from class it.unibo.alchemist.model.interfaces.Dependency
dependsOn, makesDependent
-
Methods inherited from class java.lang.Iterable
forEach, iterator, spliterator
-
Methods inherited from class java.lang.Comparable
compareTo
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Method Detail
-
allocateVar
abstract List<IExpression> allocateVar(Map<HashString, ITreeNode<out Object>> matches)
- Parameters:
matches
- the map with the variable / value bindings
-
argsNumber
abstract int argsNumber()
-
generalize
abstract ILsaMolecule generalize()
-
getArg
abstract IExpression getArg(int i)
- Parameters:
i
- : position of the argument to get
-
hasDuplicateVariables
abstract boolean hasDuplicateVariables()
-
isIdenticalTo
abstract boolean isIdenticalTo(ILsaMolecule mol)
- Parameters:
mol
- the molecule to compare to
-
isIstance
abstract boolean isIstance()
-
matches
abstract boolean matches(ILsaMolecule mol)
- Parameters:
mol
- the LsaMolecule to try to match with.
-
matches
abstract boolean matches(List<out IExpression> mol, boolean duplicateVariables)
- Parameters:
mol
- the LsaMolecule to try to match withduplicateVariables
- if true, the matching of variables reused within the same tuple is enabled
-
moreGenericOf
abstract boolean moreGenericOf(ILsaMolecule mol)
- Parameters:
mol
- the molecule to compare to
-
size
abstract int size()
-
toHashString
abstract HashString toHashString()
-
-
-
-