public class Grammar
extends java.lang.Object
GrammarDef
) in
the SyGuS IF 2.1 standard.Modifier and Type | Field and Description |
---|---|
protected long |
pointer |
Modifier and Type | Method and Description |
---|---|
void |
addAnyConstant(Term ntSymbol)
Allow
ntSymbol to be an arbitrary constant. |
void |
addAnyVariable(Term ntSymbol)
Allow
ntSymbol to be any input variable to corresponding
synth-fun or synth-inv with the same sort as
ntSymbol . |
void |
addRule(Term ntSymbol,
Term rule)
Add
rule to the set of rules corresponding to ntSymbol . |
void |
addRules(long pointer,
long ntSymbolPointer,
long[] rulePointers) |
void |
addRules(Term ntSymbol,
Term[] rules)
Add
rules to the set of rules corresponding to ntSymbol . |
void |
deletePointer() |
protected void |
deletePointer(long pointer) |
boolean |
equals(java.lang.Object g)
Referential equality operator.
|
long |
getPointer() |
int |
hashCode()
Get the hash value of a grammar.
|
boolean |
isNull()
Determine if this is the null grammar.
|
java.lang.String |
toString() |
protected java.lang.String |
toString(long pointer) |
public Grammar(Grammar grammar)
protected void deletePointer(long pointer)
public boolean isNull()
public boolean equals(java.lang.Object g)
equals
in class java.lang.Object
g
- The grammar to compare to for equality.public void addRule(Term ntSymbol, Term rule)
rule
to the set of rules corresponding to ntSymbol
.ntSymbol
- the non-terminal to which the rule is added.rule
- the rule to add.public void addRules(Term ntSymbol, Term[] rules)
rules
to the set of rules corresponding to ntSymbol
.ntSymbol
- the non-terminal to which the rules are added.rules
- the rules to add.public void addRules(long pointer, long ntSymbolPointer, long[] rulePointers)
public void addAnyConstant(Term ntSymbol)
ntSymbol
to be an arbitrary constant.ntSymbol
- the non-terminal allowed to be any constant.public void addAnyVariable(Term ntSymbol)
ntSymbol
to be any input variable to corresponding
synth-fun
or synth-inv
with the same sort as
ntSymbol
.ntSymbol
- the non-terminal allowed to be any input constant.protected java.lang.String toString(long pointer)
public int hashCode()
hashCode
in class java.lang.Object
public long getPointer()
public void deletePointer()
public java.lang.String toString()
toString
in class java.lang.Object