Make ensureTermSort private (#8436)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Tue, 29 Mar 2022 19:37:22 +0000 (14:37 -0500)
committerGitHub <noreply@github.com>
Tue, 29 Mar 2022 19:37:22 +0000 (19:37 +0000)
This method was used to correct a limitation in the old API regarding parsing decimals. It should not be a public API method.

src/api/cpp/cvc5.h
src/api/java/io/github/cvc5/api/Solver.java
src/api/java/jni/solver.cpp
src/parser/smt2/Smt2.g

index 9c7bc0c98ddfd72c04990f08a7736cb13a2677b2..3576f1f00d70ade0fbd0451ba0f79c677050c2ab 100644 (file)
@@ -4600,20 +4600,6 @@ class CVC5_EXPORT Solver
    */
   void setOption(const std::string& option, const std::string& value) const;
 
-  /**
-   * If needed, convert this term to a given sort.
-   *
-   * @note The sort of the term must be convertible into the target sort.
-   *       Currently only Int to Real conversions are supported.
-   *
-   * @warning This method is experimental and may change in future versions.
-   *
-   * @param t the term
-   * @param s the target sort
-   * @return the term wrapped into a sort conversion if needed
-   */
-  Term ensureTermSort(const Term& t, const Sort& s) const;
-
   /**
    * Append \p symbol to the current list of universal variables.
    *
@@ -4961,6 +4947,18 @@ class CVC5_EXPORT Solver
   /** Check whether string s is a valid decimal integer. */
   bool isValidInteger(const std::string& s) const;
 
+  /**
+   * If needed, convert this term to a given sort.
+   * 
+   * The sort of the term must be convertible into the target sort.
+   * Currently only Int to Real conversions are supported.
+   *
+   * @param t the term
+   * @param s the target sort
+   * @return the term wrapped into a sort conversion if needed
+   */
+  Term ensureTermSort(const Term& t, const Sort& s) const;
+
   /**
    * Check that the given term is a valid closed term, which can be used as an
    * argument to, e.g., assert, get-value, block-model-values, etc.
index f4468ba3e8dbb914953e8c74f05f59df708771be..4b4c2ccc8b42f63d9739c040edbdc7bd69319204 100644 (file)
@@ -2508,26 +2508,6 @@ public class Solver implements IPointer, AutoCloseable
 
   private native void setOption(long pointer, String option, String value);
 
-  /**
-   * If needed, convert this term to a given sort.
-   *
-   * @apiNote The sort of the term must be convertible into the target sort.
-   *          Currently only Int to Real conversions are supported.
-   *
-   * @apiNote This method is experimental and may change in future versions.
-   *
-   * @param t the term
-   * @param s the target sort
-   * @return the term wrapped into a sort conversion if needed
-   */
-  public Term ensureTermSort(Term t, Sort s)
-  {
-    long termPointer = ensureTermSort(pointer, t.getPointer(), s.getPointer());
-    return new Term(this, termPointer);
-  }
-
-  private native long ensureTermSort(long pointer, long termPointer, long sortPointer);
-
   /**
    * Append \p symbol to the current list of universal variables.
    * @param sort the sort of the universal variable
index 7eccbf2606fe9d2e18215317fb2650e2bae038fc..bb7d816fe5ebcb83c65c4df938063c7a85f7258a 100644 (file)
@@ -2385,23 +2385,6 @@ JNIEXPORT void JNICALL Java_io_github_cvc5_api_Solver_setOption(
   CVC5_JAVA_API_TRY_CATCH_END(env);
 }
 
-/*
- * Class:     io_github_cvc5_api_Solver
- * Method:    ensureTermSort
- * Signature: (JJJ)J
- */
-JNIEXPORT jlong JNICALL Java_io_github_cvc5_api_Solver_ensureTermSort(
-    JNIEnv* env, jobject, jlong pointer, jlong termPointer, jlong sortPointer)
-{
-  CVC5_JAVA_API_TRY_CATCH_BEGIN;
-  Solver* solver = reinterpret_cast<Solver*>(pointer);
-  Term* term = reinterpret_cast<Term*>(termPointer);
-  Sort* sort = reinterpret_cast<Sort*>(sortPointer);
-  Term* retPointer = new Term(solver->ensureTermSort(*term, *sort));
-  return reinterpret_cast<jlong>(retPointer);
-  CVC5_JAVA_API_TRY_CATCH_END_RETURN(env, 0);
-}
-
 /*
  * Class:     io_github_cvc5_api_Solver
  * Method:    declareSygusVar
index ee95bb0801b324a8ab248a2ea4315390e629fe92..57abe495ff151843619bfa78f28bbea7c4cc7c10 100644 (file)
@@ -1706,8 +1706,7 @@ termAtomic[cvc5::api::Term& atomTerm]
   | DECIMAL_LITERAL
     {
       std::string realStr = AntlrInput::tokenText($DECIMAL_LITERAL);
-      atomTerm = SOLVER->ensureTermSort(SOLVER->mkReal(realStr),
-                                        SOLVER->getRealSort());
+      atomTerm = SOLVER->mkReal(realStr);
     }
 
   // Constants using indexed identifiers, e.g. (_ +oo 8 24) (positive infinity