org.hawk.module.script
Class FunctionScript

java.lang.Object
  extended by org.hawk.module.script.AbstractScript
      extended by org.hawk.module.script.MultiLineScript
          extended by org.hawk.module.script.FunctionScript
All Implemented Interfaces:
IScript

public class FunctionScript
extends MultiLineScript


Nested Class Summary
static class FunctionScript.FunctionInvocationInfo
           
 
Field Summary
 
Fields inherited from class org.hawk.module.script.MultiLineScript
defaultMultiLineScript, functionScript, innerScripts, localStructStack, localVariableTableStack, multiLineContainer
 
Fields inherited from class org.hawk.module.script.AbstractScript
outerMultiLineScript
 
Constructor Summary
FunctionScript()
           
 
Method Summary
 FunctionScript createFunctionTemplate()
           
 Variable executeDefaultForLoopScript(java.util.Map<java.lang.Integer,IScript> params)
           
 ForLoopScript getDefaultForLoopScript()
           
 java.lang.String getFunctionName()
           
 ParameterScript getParameterScript()
           
 ParameterScript getParameterScriptOrig()
           
 IScript getParamValue(java.lang.String localVar)
           
 IScript getParamValue(Variable paramVar)
           
 boolean initializeParams()
           
 boolean initializeParamsValue(java.util.Map<java.lang.Integer,IScript> params)
           
 boolean isMainFunction()
           
 boolean isParamVarDeclared(Variable paramVar)
           
 boolean isVariable()
           
 java.lang.String mangle()
           
static java.util.Map<java.lang.String,FunctionScript> parseFunctions(java.util.Map<java.lang.Integer,java.lang.String> scriptMap)
           
 java.util.Map<java.lang.String,IDataType> popLocalVars()
          Default implementation for IScript.popLocalVars()
 ParameterScript popParameterScript()
           
 void pushLocalVars()
          Default implementation for IScript.pushLocalVars()
 void pushParameterScript()
           
 void setDefaultForLoopScript(ForLoopScript defaultForLoopScript)
           
 void setFunctionName(java.lang.String functionName)
           
 void setParameterScript(ParameterScript parameterScript)
           
 void setParameterScriptOrig(ParameterScript parameterScriptOrig)
           
 void setParamValue(Variable variable, IScript localValue)
           
 java.lang.String toString()
           
 
Methods inherited from class org.hawk.module.script.MultiLineScript
addScript, addScripts, copy, execute, extractMultiLineContainer, findArrayType, findNearestOuterMLScript, getFunctionScript, getInnerScripts, getLocalValue, getLocalValue, getMultiLineContainer, getStructVariable, getVariable, getVariableValue, isDefaultMultiLineScript, isInside, isInside, isLocalVarDeclared, parseMultiLines, setDefaultMultiLineScript, setFunctionScript, setInnerScripts, setLocalValue, setMultiLineContainer, setVariable, setVariableValue, toUI, unsetAllLocalValue, unsetLocalValue
 
Methods inherited from class org.hawk.module.script.AbstractScript
add, and, arrayBracket, assign, divide, equalTo, evaluateGlobalVariable, evaluateLocalBoolean, evaluateLocalVariable, getLineNumber, getOuterMultiLineScript, greaterThan, greaterThanEqualTo, isLastScript, lessThan, lessThanEqualTo, modulus, multiply, or, refer, setLastScript, setLineNumber, setOuterMultiLineScript, subtract, toJava, toJavaMap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FunctionScript

public FunctionScript()
Method Detail

parseFunctions

public static java.util.Map<java.lang.String,FunctionScript> parseFunctions(java.util.Map<java.lang.Integer,java.lang.String> scriptMap)
                                                                     throws HawkException
Throws:
HawkException

createFunctionTemplate

public FunctionScript createFunctionTemplate()

getParameterScriptOrig

public ParameterScript getParameterScriptOrig()

setParameterScriptOrig

public void setParameterScriptOrig(ParameterScript parameterScriptOrig)

getParameterScript

public ParameterScript getParameterScript()

setParameterScript

public void setParameterScript(ParameterScript parameterScript)

pushParameterScript

public void pushParameterScript()

popParameterScript

public ParameterScript popParameterScript()

mangle

public java.lang.String mangle()
Specified by:
mangle in interface IScript
Overrides:
mangle in class AbstractScript

initializeParams

public boolean initializeParams()

initializeParamsValue

public boolean initializeParamsValue(java.util.Map<java.lang.Integer,IScript> params)
                              throws HawkException
Throws:
HawkException

getParamValue

public IScript getParamValue(Variable paramVar)

getParamValue

public IScript getParamValue(java.lang.String localVar)

setParamValue

public void setParamValue(Variable variable,
                          IScript localValue)

isParamVarDeclared

public boolean isParamVarDeclared(Variable paramVar)

getDefaultForLoopScript

public ForLoopScript getDefaultForLoopScript()

setDefaultForLoopScript

public void setDefaultForLoopScript(ForLoopScript defaultForLoopScript)

getFunctionName

public java.lang.String getFunctionName()

setFunctionName

public void setFunctionName(java.lang.String functionName)

executeDefaultForLoopScript

public Variable executeDefaultForLoopScript(java.util.Map<java.lang.Integer,IScript> params)
                                     throws HawkException
Throws:
HawkException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

isMainFunction

public boolean isMainFunction()

pushLocalVars

public void pushLocalVars()
Description copied from class: AbstractScript
Default implementation for IScript.pushLocalVars()

Specified by:
pushLocalVars in interface IScript
Overrides:
pushLocalVars in class MultiLineScript

popLocalVars

public java.util.Map<java.lang.String,IDataType> popLocalVars()
Description copied from class: AbstractScript
Default implementation for IScript.popLocalVars()

Specified by:
popLocalVars in interface IScript
Overrides:
popLocalVars in class MultiLineScript
Returns:
a map containing local var and its value.

isVariable

public boolean isVariable()
Specified by:
isVariable in interface IScript
Overrides:
isVariable in class MultiLineScript
Returns: