package io.github.cvc5;
/**
- * A Sygus Grammar. This class can be used to define a context-free grammar
- * of terms. Its interface coincides with the definition of grammars
- * (``GrammarDef``) in the SyGuS IF 2.1 standard.
+ * A Sygus Grammar.
+ *
+ * This class can be used to define a context-free grammar of terms. Its
+ * interface coincides with the definition of grammars ({@code GrammarDef}) in
+ * the SyGuS IF 2.1 standard.
*/
public class Grammar extends AbstractPointer
{
// endregion
/**
- * Add \p rule to the set of rules corresponding to \p ntSymbol.
- * @param ntSymbol the non-terminal to which the rule is added
- * @param rule the rule to add
+ * Add {@code rule} to the set of rules corresponding to {@code ntSymbol}.
+ * @param ntSymbol the non-terminal to which the rule is added.
+ * @param rule the rule to add.
*/
public void addRule(Term ntSymbol, Term rule)
{
private native void addRule(long pointer, long ntSymbolPointer, long rulePointer);
/**
- * Add \p rules to the set of rules corresponding to \p ntSymbol.
- * @param ntSymbol the non-terminal to which the rules are added
- * @param rules the rules to add
+ * Add {@code rules} to the set of rules corresponding to {@code ntSymbol}.
+ * @param ntSymbol the non-terminal to which the rules are added.
+ * @param rules the rules to add.
*/
public void addRules(Term ntSymbol, Term[] rules)
{
public native void addRules(long pointer, long ntSymbolPointer, long[] rulePointers);
/**
- * Allow \p ntSymbol to be an arbitrary constant.
- * @param ntSymbol the non-terminal allowed to be any constant
+ * Allow {@code ntSymbol} to be an arbitrary constant.
+ * @param ntSymbol the non-terminal allowed to be any constant.
*/
public void addAnyConstant(Term ntSymbol)
{
private native void addAnyConstant(long pointer, long ntSymbolPointer);
/**
- * Allow \p ntSymbol to be any input variable to corresponding
- * synth-fun/synth-inv with the same sort as \p ntSymbol.
- * @param ntSymbol the non-terminal allowed to be any input constant
+ * Allow {@code ntSymbol} to be any input variable to corresponding
+ * {@code synth-fun} or {@code synth-inv} with the same sort as
+ * {@code ntSymbol}.
+ * @param ntSymbol the non-terminal allowed to be any input constant.
*/
public void addAnyVariable(Term ntSymbol)
{
private native void addAnyVariable(long pointer, long ntSymbolPointer);
/**
- * @return a string representation of this grammar.
+ * @return A String representation of this grammar.
*/
protected native String toString(long pointer);
}