Added VAL keyword to CALC parser and evaluator; evaluates to previous result.
This commit is contained in:
@@ -61,6 +61,10 @@ epicsShareFunc long
|
||||
pinst += sizeof(double) - 1;
|
||||
break;
|
||||
|
||||
case FETCH_VAL:
|
||||
*++ptop = *presult;
|
||||
break;
|
||||
|
||||
case FETCH_A:
|
||||
case FETCH_B:
|
||||
case FETCH_C:
|
||||
|
||||
@@ -122,6 +122,7 @@ static const ELEMENT operands[] = {
|
||||
{"SQRT", 7, 8, 0, UNARY_OPERATOR, SQU_RT},
|
||||
{"TAN", 7, 8, 0, UNARY_OPERATOR, TAN},
|
||||
{"TANH", 7, 8, 0, UNARY_OPERATOR, TANH},
|
||||
{"VAL", 0, 0, 1, OPERAND, FETCH_VAL},
|
||||
{"~", 7, 8, 0, UNARY_OPERATOR, BIT_NOT},
|
||||
};
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
typedef enum {
|
||||
END_EXPRESSION = 0,
|
||||
/* Operands */
|
||||
LITERAL,
|
||||
LITERAL, FETCH_VAL,
|
||||
FETCH_A, FETCH_B, FETCH_C, FETCH_D, FETCH_E, FETCH_F,
|
||||
FETCH_G, FETCH_H, FETCH_I, FETCH_J, FETCH_K, FETCH_L,
|
||||
/* Assignment */
|
||||
|
||||
Reference in New Issue
Block a user