OpenASIP 2.2
Loading...
Searching...
No Matches
Public Member Functions | List of all members
ConditionScript Class Reference

#include <ConditionScript.hh>

Inheritance diagram for ConditionScript:
Inheritance graph
Collaboration diagram for ConditionScript:
Collaboration graph

Public Member Functions

 ConditionScript (ScriptInterpreter *interpreter, std::string scriptLine)
 
 ConditionScript (ScriptInterpreter *interpreter, std::vector< std::string > &script)
 
virtual ~ConditionScript ()
 
virtual bool conditionOk ()
 
virtual ConditionScriptcopy () const
 
- Public Member Functions inherited from Script
 Script (ScriptInterpreter *interpreter, std::string scriptLine)
 
 Script (ScriptInterpreter *interpreter, std::vector< std::string > &script)
 
virtual ~Script ()
 
virtual DataObject execute ()
 
DataObject lastResult ()
 
virtual std::vector< std::string > script () const
 

Additional Inherited Members

- Protected Attributes inherited from Script
ScriptInterpreterinterpreter_
 Interpreter executing the commands.
 

Detailed Description

Class that contains a script that defines a condition for some action.

Definition at line 45 of file ConditionScript.hh.

Constructor & Destructor Documentation

◆ ConditionScript() [1/2]

ConditionScript::ConditionScript ( ScriptInterpreter interpreter,
std::string  scriptLine 
)

Constructor.

Parameters
interpreterInterpreter for the script.
scriptLineA line of script.

Definition at line 46 of file ConditionScript.cc.

48 : Script(interpreter, scriptLine) {
49}

◆ ConditionScript() [2/2]

ConditionScript::ConditionScript ( ScriptInterpreter interpreter,
std::vector< std::string > &  script 
)

Constructor.

Parameters
interpreterInterpreter for the script.
scriptThe script.

Definition at line 57 of file ConditionScript.cc.

59 : Script(interpreter, script) {
60}
virtual std::vector< std::string > script() const
Definition Script.cc:106

◆ ~ConditionScript()

ConditionScript::~ConditionScript ( )
virtual

Destructor.

Definition at line 65 of file ConditionScript.cc.

65 {
66}

Member Function Documentation

◆ conditionOk()

bool ConditionScript::conditionOk ( )
virtual

Tests if condition is true of false.

Returns
True, if condition is true, false otherwise.
Exceptions
NumberFormatExceptionIf DataObject operation fails.
ScriptExecutionFailureIf script execution fails.

Definition at line 76 of file ConditionScript.cc.

76 {
77 vector<string> scripts = script();
78 if (scripts.size() == 1 && scripts[0] == "") {
79 return true;
80 }
81
82 DataObject obj = execute();
83 if (obj.stringValue() == "0") {
85 return false;
86 }
88 return true;
89}
virtual std::string stringValue() const
virtual void setResult(DataObject *result)
ScriptInterpreter * interpreter_
Interpreter executing the commands.
Definition Script.hh:58
virtual DataObject execute()
Definition Script.cc:82

References Script::execute(), Script::interpreter_, Script::script(), ScriptInterpreter::setResult(), and DataObject::stringValue().

Referenced by StopPoint::isConditionOK().

Here is the call graph for this function:

◆ copy()

ConditionScript * ConditionScript::copy ( ) const
virtual

Copies the condition script.

Allows dynamically bound copy.

Returns
a new instance which is identical to this.

Reimplemented in TclConditionScript.

Definition at line 99 of file ConditionScript.cc.

99 {
100 return new ConditionScript(*this);
101}

Referenced by Breakpoint::copy(), Watch::copy(), and StopPoint::setCondition().


The documentation for this class was generated from the following files: