#include <value.h>
Inheritance diagram for Expression:
Public Member Functions | |
virtual Data | getSaveDescription (QString prefix) |
Expression (QString op) | |
Expression (Token data) | |
void | add (Value *n) |
int | argc () |
QString | op () |
Value * | argv (int i) |
virtual QString | toString () |
virtual bool | equals_same_type (Value *other) |
Private Attributes | |
vector< Value * > | values |
QString | operat |
Definition at line 37 of file value.h.
|
Definition at line 44 of file value.h.
|
|
Definition at line 55 of file value.cpp. References Value::load(), operat, and values. 00056 { 00057 operat = (String)data["operator"]; 00058 Array<1,Data> arguments = data["values"]; 00059 for(Array<1,Data>::ordered argument(arguments) ; argument.more() ; ++argument) 00060 values.push_back(Value::load(argument)); 00061 }
|
|
Definition at line 46 of file value.h. References values. Referenced by ValueCopier::copyExpr(), and ParseText::parse(). 00046 {values.push_back(n);};
|
|
Definition at line 47 of file value.h. References values. Referenced by IisCell::apply(), ValueCopier::copyExpr(), IisCell::gather_inputs(), and Runtime::requires_user_input(). 00047 {return values.size();};
|
|
Definition at line 49 of file value.h. References values. Referenced by IisCell::apply(), ValueCopier::copyExpr(), IisCell::gather_inputs(), and Runtime::requires_user_input(). 00049 {return values[i];};
|
|
Implements Value. Definition at line 32 of file value.cpp. References Value::equals(), operat, and values. 00033 { 00034 Expression * o = (Expression*)other; 00035 if (o->operat!=operat) return false; 00036 if (values.size() != o->values.size()) return false; 00037 for(unsigned int i = 0 ; i < values.size() ; i++) 00038 if (!values[i]->equals(o->values[i])) 00039 return false; 00040 return true; 00041 }
|
|
Implements Value. Definition at line 43 of file value.cpp. References operat, and values. 00044 { 00045 Token E; 00046 E["type"]=Symbol("expression"); 00047 E["operator"]=String(operat); 00048 Array<1,Data> V(values.size()); 00049 E["values"]=V; 00050 for(unsigned int i = 0 ; i < values.size() ; i++) 00051 V[i]=values[i]->getSaveDescription(prefix); 00052 return E; 00053 }
|
|
Definition at line 48 of file value.h. References operat. Referenced by IisCell::apply(), ValueCopier::copyExpr(), and Runtime::requires_user_input(). 00048 {return operat;};
|
|
Implements Value. Definition at line 20 of file value.cpp. References operat, and values. 00021 { 00022 QString result("("); 00023 result+=operat; 00024 for(vector<Value*>::iterator it=values.begin(); it!=values.end() ; it++) 00025 { 00026 result+=" "; 00027 result+=(*it)->toString(); 00028 } 00029 return result+")"; 00030 }
|
|
Definition at line 41 of file value.h. Referenced by equals_same_type(), Expression(), getSaveDescription(), op(), and toString(). |
|
Definition at line 40 of file value.h. Referenced by add(), argc(), argv(), equals_same_type(), Expression(), getSaveDescription(), and toString(). |