org.eclipse.ocl.examples.debug.vm
Class VariableFinder

java.lang.Object
  extended by org.eclipse.ocl.examples.debug.vm.VariableFinder

public class VariableFinder
extends java.lang.Object


Constructor Summary
VariableFinder(IVMEvaluationEnvironment<?> fEvalEnv, boolean isStoreValues)
           
 
Method Summary
 void collectChildVars(java.lang.Object root, java.lang.String[] parentPath, java.lang.String containerType, java.util.List<VMVariableData> result)
           
static java.lang.String computeDetail(org.eclipse.emf.common.util.URI variableURI, IVMEvaluationEnvironment<?> fEvalEnv)
           
static org.eclipse.emf.common.util.URI createURI(java.lang.String[] varPath)
           
static org.eclipse.emf.common.util.URI createURI(java.lang.String[] varPath, int endIndex)
           
 void find(java.lang.String[] objectPath, boolean fetchChildVariables, java.util.List<VMVariableData> result)
           
static java.util.List<org.eclipse.emf.ecore.EStructuralFeature> getAllFeatures(org.eclipse.emf.ecore.EClass eClass)
           
static java.lang.String getRootVarName(org.eclipse.emf.common.util.URI variableURI)
           
protected static java.lang.String getTermVariableName(OCLExpression oclExpression)
           
 java.lang.Object getValue(org.eclipse.emf.ecore.EStructuralFeature feature, org.eclipse.emf.ecore.EObject target)
           
static java.lang.String[] getVariablePath(org.eclipse.emf.common.util.URI variableURI)
           
static java.util.List<VMVariableData> getVariables(IVMEvaluationEnvironment<?> evalEnv)
           
 java.lang.Object navigateProperty(org.eclipse.emf.ecore.EStructuralFeature property, java.util.List<?> qualifiers, java.lang.Object target)
           
static org.eclipse.emf.common.util.URI parseURI(java.lang.String variableURI)
           
static VMResponse process(VMVariableRequest request, java.util.List<UnitLocation> stack, IVMEvaluationEnvironment<?> fEvalEnv)
           
static void setValueAndType(VMVariableData variable, java.lang.Object value, DomainType optDeclaredType, EvaluationEnvironment evalEnv)
           
static void setValueAndType(VMVariableData variable, java.lang.Object value, org.eclipse.emf.ecore.EClassifier optDeclaredType, EvaluationEnvironment evalEnv)
           
static void setValueAndType(VMVariableData variable, java.lang.Object value, java.lang.String declaredTypeName, EvaluationEnvironment evalEnv)
           
 java.lang.Object superNavigateProperty(org.eclipse.emf.ecore.EStructuralFeature property, java.util.List<?> qualifiers, java.lang.Object target)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VariableFinder

public VariableFinder(@NonNull
                      IVMEvaluationEnvironment<?> fEvalEnv,
                      boolean isStoreValues)
Method Detail

computeDetail

@Nullable
public static java.lang.String computeDetail(@NonNull
                                                      org.eclipse.emf.common.util.URI variableURI,
                                                      @NonNull
                                                      IVMEvaluationEnvironment<?> fEvalEnv)

createURI

@NonNull
public static org.eclipse.emf.common.util.URI createURI(@NonNull
                                                                java.lang.String[] varPath)

createURI

@NonNull
public static org.eclipse.emf.common.util.URI createURI(@NonNull
                                                                java.lang.String[] varPath,
                                                                int endIndex)

getAllFeatures

@NonNull
public static java.util.List<org.eclipse.emf.ecore.EStructuralFeature> getAllFeatures(@NonNull
                                                                                              org.eclipse.emf.ecore.EClass eClass)

getRootVarName

public static java.lang.String getRootVarName(org.eclipse.emf.common.util.URI variableURI)

getVariables

@NonNull
public static java.util.List<VMVariableData> getVariables(@NonNull
                                                                  IVMEvaluationEnvironment<?> evalEnv)

getVariablePath

@NonNull
public static java.lang.String[] getVariablePath(@NonNull
                                                         org.eclipse.emf.common.util.URI variableURI)

parseURI

@NonNull
public static org.eclipse.emf.common.util.URI parseURI(java.lang.String variableURI)
                                                throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

process

public static VMResponse process(@NonNull
                                 VMVariableRequest request,
                                 @NonNull
                                 java.util.List<UnitLocation> stack,
                                 @NonNull
                                 IVMEvaluationEnvironment<?> fEvalEnv)

setValueAndType

public static void setValueAndType(@NonNull
                                   VMVariableData variable,
                                   @Nullable
                                   java.lang.Object value,
                                   @Nullable
                                   DomainType optDeclaredType,
                                   @NonNull
                                   EvaluationEnvironment evalEnv)

setValueAndType

public static void setValueAndType(@NonNull
                                   VMVariableData variable,
                                   @Nullable
                                   java.lang.Object value,
                                   @Nullable
                                   org.eclipse.emf.ecore.EClassifier optDeclaredType,
                                   @NonNull
                                   EvaluationEnvironment evalEnv)

setValueAndType

public static void setValueAndType(@NonNull
                                   VMVariableData variable,
                                   @Nullable
                                   java.lang.Object value,
                                   @Nullable
                                   java.lang.String declaredTypeName,
                                   @NonNull
                                   EvaluationEnvironment evalEnv)

collectChildVars

public void collectChildVars(java.lang.Object root,
                             @NonNull
                             java.lang.String[] parentPath,
                             @Nullable
                             java.lang.String containerType,
                             @NonNull
                             java.util.List<VMVariableData> result)

find

public void find(@NonNull
                 java.lang.String[] objectPath,
                 boolean fetchChildVariables,
                 @NonNull
                 java.util.List<VMVariableData> result)

getTermVariableName

protected static java.lang.String getTermVariableName(@NonNull
                                                      OCLExpression oclExpression)

getValue

public java.lang.Object getValue(org.eclipse.emf.ecore.EStructuralFeature feature,
                                 org.eclipse.emf.ecore.EObject target)

navigateProperty

public java.lang.Object navigateProperty(org.eclipse.emf.ecore.EStructuralFeature property,
                                         java.util.List<?> qualifiers,
                                         java.lang.Object target)
                                  throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

superNavigateProperty

public java.lang.Object superNavigateProperty(org.eclipse.emf.ecore.EStructuralFeature property,
                                              java.util.List<?> qualifiers,
                                              java.lang.Object target)
                                       throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException