/* If set, this operation may not occur after TEMPORARY.
(Currently this applies only to LAG.) */
- OPF_PERM_ONLY = 0100
+ OPF_PERM_ONLY = 0100,
+
+ /* If set, this operation's name may not be abbreviated. */
+ OPF_NO_ABBREV = 0200
};
#define EXPR_ARG_MAX 4
struct expression
{
struct pool *expr_pool; /* Pool for expression static data. */
- struct dictionary *dict; /* Dictionary for variables, vectors. */
+ struct dataset *ds ; /* The dataset */
atom_type type; /* Type of expression result. */
union operation_data *ops; /* Expression data. */
struct pool *eval_pool; /* Pool for evaluation temporaries. */
};
-struct expression *expr_parse_any (struct dictionary *, bool optimize);
+struct expression *expr_parse_any (struct lexer *lexer, struct dataset *, bool optimize);
void expr_debug_print_postfix (const struct expression *);
union any_node *expr_optimize (union any_node *, struct expression *);