File tree 1 file changed +9
-7
lines changed
src/org/sosy_lab/java_smt/api
1 file changed +9
-7
lines changed Original file line number Diff line number Diff line change 12
12
import java .util .Arrays ;
13
13
import java .util .List ;
14
14
import org .sosy_lab .java_smt .api .NumeralFormula .IntegerFormula ;
15
+ import org .sosy_lab .java_smt .basicimpl .AbstractStringFormulaManager ;
15
16
16
17
/**
17
18
* Manager for dealing with string formulas. Functions come from <a
@@ -22,13 +23,14 @@ public interface StringFormulaManager {
22
23
/**
23
24
* Creates a {@link StringFormula} representing the given constant String.
24
25
*
25
- * <p>This method accepts plain Java Strings with Unicode characters from the Basic Multilingual
26
- * Plane (BMP) or planes 1 and 2 (codepoints in range [0x00000, 0x2FFFF]). JavaSMT handles
27
- * escaping internally, as some solvers follow the SMTLIB standard and escape Unicode characters
28
- * with curly braces.
29
- *
30
- * <p>Additionally, you can use SMTLIB escaping like "\\u{1234}" to represent Unicode characters
31
- * directly.
26
+ * <p>The format for the String depends on whether the option <code>solver.useUnicodeStrings
27
+ * </code> is set to true or false. If the option is enabled, the method will accept any Java
28
+ * String with Unicode letters from the first 3 planes (codepoints 0x00000-0x2FFFFF). Higher
29
+ * codepoints are not allowed due to limitations in SMTLIB. When the option is set to false, only
30
+ * (printable) US-ASCII characters are allowed in the String. Unicode characters can still be
31
+ * used, but need to be written as escape sequences. See {@link
32
+ * AbstractStringFormulaManager#escapeUnicodeForSmtlib(String)} for a function that can handle the
33
+ * conversion for this method.
32
34
*
33
35
* @param value the string value the returned {@link StringFormula} should represent
34
36
* @return a {@link StringFormula} representing the given value
You can’t perform that action at this time.
0 commit comments