public final class SymbolicHeap extends Object
| Modifier and Type | Field and Description |
|---|---|
static String |
$BIG_INTEGER_CONTENTS |
static String |
$BOOLEAN_VALUE |
static String |
$BYTE_VALUE |
static String |
$CHAR_VALUE |
static String |
$DOUBLE_VALUE |
static String |
$FLOAT_VALUE |
static String |
$INT_VALUE |
static String |
$LONG_VALUE |
static String |
$MATCHER_INPUT |
static String |
$SHORT_VALUE |
static String |
$STRING_BUFFER_CONTENTS |
static String |
$STRING_BUILDER_CONTENTS |
static String |
$STRING_READER_VALUE |
static String |
$STRING_TOKENIZER_VALUE |
static String |
$STRING_VALUE |
protected static org.slf4j.Logger |
logger |
| Constructor and Description |
|---|
SymbolicHeap()
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
RealValue |
array_load(ReferenceExpression symb_array,
int conc_index,
double conc_value) |
IntegerValue |
array_load(ReferenceExpression symb_array,
int conc_index,
long conc_value) |
StringValue |
array_load(ReferenceExpression symb_array,
int conc_index,
String conc_value) |
void |
array_store(Object conc_array,
ReferenceExpression symb_array,
int conc_index,
Expression<?> symb_value) |
ReferenceConstant |
buildNewReferenceConstant(org.objectweb.asm.Type objectType)
This constructor is for references created in instrumented code (NEW,
ANEW, NEWARRAY, etc).
|
ReferenceVariable |
buildNewReferenceVariable(Object conc_object,
String var_name)
Builds a new reference variable using a var_name and a concrete obhect
The concrete object can be null.
|
Expression<?> |
getField(String className,
String fieldName,
Object conc_receiver,
ReferenceExpression symb_receiver)
No default concrete value means the return value could be false!
|
RealValue |
getField(String className,
String fieldName,
Object conc_receiver,
ReferenceExpression symb_receiver,
double conc_value) |
IntegerValue |
getField(String owner,
String name,
Object conc_receiver,
ReferenceExpression symb_receiver,
long conc_value)
Returns a stored symbolic expression for an int field or created one
|
StringValue |
getField(String className,
String fieldName,
Object conc_receiver,
ReferenceExpression symb_receiver,
String conc_value) |
ReferenceExpression |
getReference(Object conc_ref)
Returns a
ReferenceConstant if the concrete reference is
null. |
RealValue |
getStaticField(String owner,
String name,
double conc_value) |
IntegerValue |
getStaticField(String owner,
String name,
long conc_value) |
StringValue |
getStaticField(String owner,
String name,
String conc_value) |
void |
initializeReference(Object conc_ref,
ReferenceExpression symb_ref)
Initializes a reference using a concrete object
|
void |
putField(String className,
String fieldName,
Object conc_receiver,
ReferenceExpression symb_receiver,
Expression<?> symb_value)
Updates an instance field.
|
void |
putStaticField(String owner,
String name,
Expression<?> symb_value) |
protected static final org.slf4j.Logger logger
public static final String $STRING_BUILDER_CONTENTS
public static final String $STRING_BUFFER_CONTENTS
public static final String $BIG_INTEGER_CONTENTS
public static final String $STRING_TOKENIZER_VALUE
public static final String $STRING_READER_VALUE
public static final String $MATCHER_INPUT
public static final String $BOOLEAN_VALUE
public static final String $BYTE_VALUE
public static final String $CHAR_VALUE
public static final String $SHORT_VALUE
public static final String $LONG_VALUE
public static final String $INT_VALUE
public static final String $FLOAT_VALUE
public static final String $DOUBLE_VALUE
public static final String $STRING_VALUE
public ReferenceConstant buildNewReferenceConstant(org.objectweb.asm.Type objectType)
exceptionClassName - public void putField(String className, String fieldName, Object conc_receiver, ReferenceExpression symb_receiver, Expression<?> symb_value)
className - fieldName - conc_receiver - The concrete Object receiver instancesymb_receiver - A symbolic NonNullReference instancesymb_value - The Expression to be stored. Null value means the previous
symbolic expression has to be erased.public IntegerValue getField(String owner, String name, Object conc_receiver, ReferenceExpression symb_receiver, long conc_value)
owner - name - conc_receiver - symb_receiver - conc_value - public RealValue getField(String className, String fieldName, Object conc_receiver, ReferenceExpression symb_receiver, double conc_value)
className - fieldName - conc_receiver - symb_receiver - conc_value - public StringValue getField(String className, String fieldName, Object conc_receiver, ReferenceExpression symb_receiver, String conc_value)
className - fieldName - conc_receiver - symb_receiver - conc_value - public Expression<?> getField(String className, String fieldName, Object conc_receiver, ReferenceExpression symb_receiver)
className - fieldName - conc_receiver - symb_receiver - public void putStaticField(String owner, String name, Expression<?> symb_value)
public IntegerValue getStaticField(String owner, String name, long conc_value)
public StringValue getStaticField(String owner, String name, String conc_value)
public ReferenceExpression getReference(Object conc_ref)
ReferenceConstant if the concrete reference is
null. Otherwise, it looks in the list of non-null symbolic references for
a symbolic reference with the concrete value. If it is found, that
symbolic reference is returned, otherwise a new reference constant is
created (and added ot the list of non-null symbolic references)conc_ref - public ReferenceVariable buildNewReferenceVariable(Object conc_object, String var_name)
conc_object - var_name - public void array_store(Object conc_array, ReferenceExpression symb_array, int conc_index, Expression<?> symb_value)
public StringValue array_load(ReferenceExpression symb_array, int conc_index, String conc_value)
public IntegerValue array_load(ReferenceExpression symb_array, int conc_index, long conc_value)
public RealValue array_load(ReferenceExpression symb_array, int conc_index, double conc_value)
public void initializeReference(Object conc_ref, ReferenceExpression symb_ref)
conc_ref - symb_ref - Copyright © 2010–2017 EvoSuite. All rights reserved.