Package daikon.chicory
Class RootInfo
- Object
-
- DaikonVariableInfo
-
- RootInfo
-
- All Implemented Interfaces:
Comparable<DaikonVariableInfo>
,Iterable<DaikonVariableInfo>
public class RootInfo extends DaikonVariableInfo
This is a subtype of DaikonVariableInfo and is used as a "placeholder" for the root of the tree. It contains no variable information other than what is stored in its children.
-
-
Field Summary
-
Fields inherited from class DaikonVariableInfo
children, class_suffix, class_suffix_relative_name, classClassName, compareInfoString, declShouldPrint, dkconfig_constant_infer, dtraceShouldPrint, dtraceShouldPrintChildren, isArray, isNonNullParamString, isNonNullString, isParamString, ppt_statics, repTypeName, std_visibility, stringClassName, typeName
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static RootInfo
enter_process(MethodInfo mi, int depth)
Creates a RootInfo object for a method entry program point.static RootInfo
exit_process(MethodInfo mi, int depth)
Creates a RootInfo object for a method exit program point.VarKind
get_var_kind()
Returns the kind of the variable (array, field, function, etc)static RootInfo
getClassPpt(ClassInfo cinfo, int depth)
Creates a new RootInfo object for a class program point.Object
getMyValFromParentVal(Object value)
Given a value corresponding to the parent of this, return the value of this.static RootInfo
getObjectPpt(ClassInfo cinfo, int depth)
Creates a new RootInfo object for an object program point.-
Methods inherited from class DaikonVariableInfo
addChild, addChildNodes, addClassVars, addDeclVar, addParamDeclVar, addParameters, addPureMethodDecl, array_child, checkForDerivedVariables, checkForListDecl, checkForRuntimeClass, compareTo, declShouldPrint, dTraceShouldPrint, dTraceShouldPrintChildren, get_const_val, get_function_args, get_relative_name, get_var_flags, getCompareString, getDTraceValueString, getName, getRepName, getRepTypeName, getRepTypeNameOnly, getTypeName, getTypeNameOnly, getValueStringOfList, getValueStringOfObjectWithMod, implementsList, isArray, isFieldVisible, isHashcode, isHashcodeArray, isInt, isStatic, iterator, shouldAddRuntimeClass, stdClassName, systemClass, toString, tree_as_list, treeString
-
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
getMyValFromParentVal
public Object getMyValFromParentVal(Object value)
Description copied from class:DaikonVariableInfo
Given a value corresponding to the parent of this, return the value of this.For instance, if the variable a has a field b, then calling getMyValFromParentVal(val_of_a) will return the value of a.b .
- Specified by:
getMyValFromParentVal
in classDaikonVariableInfo
- Parameters:
value
- the parent object. Can be null for static fields.- Returns:
- the value for this, computed from
parentVal
-
enter_process
public static RootInfo enter_process(MethodInfo mi, int depth)
Creates a RootInfo object for a method entry program point.
-
exit_process
public static RootInfo exit_process(MethodInfo mi, int depth)
Creates a RootInfo object for a method exit program point.
-
getObjectPpt
public static RootInfo getObjectPpt(ClassInfo cinfo, int depth)
Creates a new RootInfo object for an object program point. This will include the class' fields and the "this" object.- Parameters:
cinfo
- information about the classdepth
- the depth to which to nest variables, as in "a.b.field"- Returns:
- a a new RootInfo object for an object program point
-
getClassPpt
public static RootInfo getClassPpt(ClassInfo cinfo, int depth)
Creates a new RootInfo object for a class program point. This will just include static fields.- Parameters:
cinfo
- information about the classdepth
- the depth to which to nest variables, as in "a.b.field"- Returns:
- a new RootInfo object for a class program point
-
get_var_kind
public VarKind get_var_kind()
Description copied from class:DaikonVariableInfo
Returns the kind of the variable (array, field, function, etc)- Specified by:
get_var_kind
in classDaikonVariableInfo
-
-