Package de.uzl.its.swat.symbolic
Class Frame
java.lang.Object
de.uzl.its.swat.symbolic.Frame
A symbolic Stack Frame that stores Values in the symbolic Stack and symbolic locals
- 
Field SummaryFieldsModifier and TypeFieldDescriptionfinal intNumber of words that are returned on invoke method end
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidSets a Value into the symbolic locals at a specific index If the index is larger than the current max, a Placeholder Values are added until the index is reachedvoidAdds a two byte Value into the symbolic locals, at the next available index (not Placeholder) The two bytes are reflected by first adding a placeholder and then the actual valuevoidclear()Clears the symbolic stackValue<?,?> getLocal(int index) Gets a Value from the symbolic localsValue<?,?> getLocal2(int index) Gets a two byte Value from the symbolic localsThe symbolic version of Javas locals -- GETTER -- Gets all locals of the Frame (used for lambdas)Value<?,?> getRet()getStack()The symbolic version of Javas stackValue<?,?> peek()Peeks at the top element on the symbolic stack without popping itValue<?,?> peek2()Peeks at the top 2 elements on the symbolic stack without popping themValue<?,?> pop()Pops the top element from the symbolic stackValue<?,?> pop2()Pops the top 2 elements from the symbolic stackvoidvoidPushes one element onto the symbolic stackvoidPushes 2 elements onto the symbolic stack (used for e.g.voidSets a Value into the symbolic locals at a specific index If the index is larger than the current max, a Placeholder Values are added until the index is reachedvoidSets a two byte Value into the symbolic locals at a specific index If the index is larger than the current max, Placeholder Values are added until the index is reached The two bytes are reflected by first adding a placeholder and then the actual valuevoidSetter for the return value of the symbolic stack frametoString()Override of the default toString method for printing the Current symbolic stack frame and locals
- 
Field Details- 
nReturnWordspublic final int nReturnWordsNumber of words that are returned on invoke method end
 
- 
- 
Constructor Details- 
FrameConstructor for Frame- Parameters:
- nReturnWords- Number of words that are returned on invoke method end
 
 
- 
- 
Method Details- 
setRetSetter for the return value of the symbolic stack frame- Parameters:
- v- The return value for the invoked method
 
- 
addLocalSets a Value into the symbolic locals at a specific index If the index is larger than the current max, a Placeholder Values are added until the index is reached- Parameters:
- o- The Value that should be placed into the symbolic locals
 
- 
addLocal2Adds a two byte Value into the symbolic locals, at the next available index (not Placeholder) The two bytes are reflected by first adding a placeholder and then the actual value- Parameters:
- o- The Value that should be placed into the symbolic locals
 
- 
setLocalSets a Value into the symbolic locals at a specific index If the index is larger than the current max, a Placeholder Values are added until the index is reached- Parameters:
- index- The index of the value
- o- The Value that should be placed into the symbolic locals
 
- 
getLocalGets a Value from the symbolic locals- Parameters:
- index- The index to get from the symbolic locals, if the index does not exist, returns a Placeholder
- Returns:
- The Value at position index in the symbolic locals
 
- 
setLocal2Sets a two byte Value into the symbolic locals at a specific index If the index is larger than the current max, Placeholder Values are added until the index is reached The two bytes are reflected by first adding a placeholder and then the actual value- Parameters:
- index- The index of the value
- o- The Value that should be placed into the symbolic locals
 
- 
getLocal2Gets a two byte Value from the symbolic locals- Parameters:
- index- The index of the Value
- Returns:
- The Value if the index exists, else a Placeholder
 
- 
pushPushes one element onto the symbolic stack- Parameters:
- o- Value to be pushed onto the symbolic stack
 
- 
push2Pushes 2 elements onto the symbolic stack (used for e.g. for two byte datatype. THe second pushed value is a placeholder)- Parameters:
- o- Value to be pushed onto the symbolic stack
 
- 
popPops the top element from the symbolic stack- Returns:
- the top element from the symbolic stack
 
- 
pop2Pops the top 2 elements from the symbolic stack- Returns:
- the top two elements from the symbolic stack
 
- 
peekPeeks at the top element on the symbolic stack without popping it- Returns:
- the top element from the symbolic stack
 
- 
peek2Peeks at the top 2 elements on the symbolic stack without popping them- Returns:
- the top two elements from the symbolic stack
 
- 
clearpublic void clear()Clears the symbolic stack
- 
printStackpublic void printStack()
- 
toStringOverride of the default toString method for printing the Current symbolic stack frame and locals
- 
getLocalsThe symbolic version of Javas locals -- GETTER -- Gets all locals of the Frame (used for lambdas)- Returns:
- All locals
 
- 
getStackThe symbolic version of Javas stack
- 
getRet
- 
getClassName
- 
getMethodName
 
-