Class StringValue
java.lang.Object
de.uzl.its.swat.symbolic.value.Value<T,K>
de.uzl.its.swat.symbolic.value.reference.ObjectValue<org.sosy_lab.java_smt.api.StringFormula,String>
de.uzl.its.swat.symbolic.value.reference.lang.StringValue
-
Field Summary
Fields inherited from class de.uzl.its.swat.symbolic.value.reference.ObjectValue
address, ADDRESS_UNKNOWN, className
-
Constructor Summary
ConstructorDescriptionStringValue
(org.sosy_lab.java_smt.api.SolverContext context, String concrete, int address) StringValue
(org.sosy_lab.java_smt.api.SolverContext context, String concrete, org.sosy_lab.java_smt.api.StringFormula formula, int address) -
Method Summary
Modifier and TypeMethodDescriptionorg.sosy_lab.java_smt.api.BooleanFormula
getBounds
(boolean upper) Creates a formula that asserts that this symbolic value is withing the bounds of this typeorg.sosy_lab.java_smt.api.BooleanFormula
IF_ACMPEQ
(ObjectValue o2) Compares if two references are identicalorg.sosy_lab.java_smt.api.BooleanFormula
IF_ACMPNE
(ObjectValue o2) Compares if two references are not identicalValue<?,
?> invokeMethod
(String name, org.objectweb.asm.Type[] desc, Value<?, ?>[] args) Handles method invocation for Java's String (Java 16).MAKE_SYMBOLIC
(long idx) Turns this IntValue into a symbolic variableMAKE_SYMBOLIC
(String namePrefix) toString()
Returns the string representation of the value.Methods inherited from class de.uzl.its.swat.symbolic.value.reference.ObjectValue
asArrayValue, asFloatValue, asIntValue, asObjectArrayValue, equals, getAddress, getField, getFields, getnFields, IFNONNULL, IFNULL, setAddress, setField, setFields
Methods inherited from class de.uzl.its.swat.symbolic.value.Value
asBooleanValue, asByteValue, asCharValue, asDoubleValue, asLongValue, asNumericalValue, asShortValue, getName, getType, initSymbolic, initSymbolic, reset
-
Constructor Details
-
StringValue
-
StringValue
public StringValue(org.sosy_lab.java_smt.api.SolverContext context, String concrete, org.sosy_lab.java_smt.api.StringFormula formula, int address)
-
-
Method Details
-
IF_ACMPNE
Compares if two references are not identical- Overrides:
IF_ACMPNE
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String> - Parameters:
o2
- The other string- Returns:
- A BooleanFormula representing the result
-
IF_ACMPEQ
Compares if two references are identical- Overrides:
IF_ACMPEQ
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String> - Parameters:
o2
- The other string- Returns:
- A BooleanFormula representing the result
-
getConcrete
- Overrides:
getConcrete
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String>
-
MAKE_SYMBOLIC
- Overrides:
MAKE_SYMBOLIC
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String>
-
MAKE_SYMBOLIC
- Overrides:
MAKE_SYMBOLIC
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String>
-
MAKE_SYMBOLIC
Turns this IntValue into a symbolic variable- Overrides:
MAKE_SYMBOLIC
in classValue<org.sosy_lab.java_smt.api.StringFormula,
String> - Parameters:
idx
-- Returns:
- The numerical identifier of this symbolic variable
-
getBounds
public org.sosy_lab.java_smt.api.BooleanFormula getBounds(boolean upper) Creates a formula that asserts that this symbolic value is withing the bounds of this type -
invokeMethod
Handles method invocation for Java's String (Java 16).- Overrides:
invokeMethod
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String> - Parameters:
name
- The name of the method that is calleddesc
- The Type descriptions for all Argumentsargs
- The Value's representing the arguments- Returns:
- The return Value of the Method, or a PlaceHolder::instance if the Method is not implemented or void should be returned
-
getConcreteEncoded
- Overrides:
getConcreteEncoded
in classValue<org.sosy_lab.java_smt.api.StringFormula,
String>
-
asStringValue
- Overrides:
asStringValue
in classValue<org.sosy_lab.java_smt.api.StringFormula,
String>
-
asObjectValue
- Overrides:
asObjectValue
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String>
-
toString
Description copied from class:Value
Returns the string representation of the value. Should be implemented by each inheriting class.- Overrides:
toString
in classObjectValue<org.sosy_lab.java_smt.api.StringFormula,
String> - Returns:
- the string representation of the value
-