168 |
* expression's constant value may be evaluated already at script |
* expression's constant value may be evaluated already at script |
169 |
* parse time, which may result in performance benefits during script |
* parse time, which may result in performance benefits during script |
170 |
* runtime. |
* runtime. |
171 |
|
* |
172 |
|
* @b NOTE: A constant expression is per se always also non modifyable. |
173 |
|
* But a non modifyable expression may not necessarily be a constant |
174 |
|
* expression! |
175 |
|
* |
176 |
|
* @see isModifyable() |
177 |
*/ |
*/ |
178 |
virtual bool isConstExpr() const = 0; |
virtual bool isConstExpr() const = 0; |
179 |
|
|
180 |
|
/** |
181 |
|
* Returns true in case this expression is allowed to be modified. |
182 |
|
* If this method returns @c false then this expression must be handled |
183 |
|
* as read-only expression, which means that assigning a new value to it |
184 |
|
* is either not possible or not allowed. |
185 |
|
* |
186 |
|
* @b NOTE: A constant expression is per se always also non modifyable. |
187 |
|
* But a non modifyable expression may not necessarily be a constant |
188 |
|
* expression! |
189 |
|
* |
190 |
|
* @see isConstExpr() |
191 |
|
*/ |
192 |
bool isModifyable() const; |
bool isModifyable() const; |
193 |
}; |
}; |
194 |
|
|