|  | 
|  | expr () | 
|  | 
|  | expr (const expr &x)=delete | 
|  | 
| expr & | operator= (const expr &x)=delete | 
|  | 
|  | ~expr () | 
|  | 
| void | set_from (expr &other) | 
|  | 
|  | expr (expr &&other) | 
|  | 
| void | operator= (expr &&other) | 
|  | 
| void | swap (expr &other) | 
|  | 
|  | expr (int n, const YYLTYPE &loc, int_tag) | 
|  | 
|  | expr (bool b, const YYLTYPE &loc, bool_tag) | 
|  | 
|  | expr (std::string &&s, const YYLTYPE &loc) | 
|  | 
|  | expr (id_type id, const YYLTYPE &loc, identifier_tag) | 
|  | 
|  | expr (const YYLTYPE &loc, dollar_tag) | 
|  | 
|  | expr (const YYLTYPE &loc, break_tag t) | 
|  | 
|  | expr (expr_p exp, const YYLTYPE &loc, return_tag t) | 
|  | 
|  | expr (const YYLTYPE &loc, die_tag) | 
|  | 
|  | expr (expr_list &&nodes, tuple_display_tag, const YYLTYPE &loc) | 
|  | 
|  | expr (expr_list &&nodes, list_display_tag, const YYLTYPE &loc) | 
|  | 
|  | expr (expr_list &&nodes, tuple_display_tag, const source_location &loc) | 
|  | 
|  | expr (expr_list &&nodes, tuple_display_tag) | 
|  | 
|  | expr (app &&fx, const YYLTYPE &loc) | 
|  | 
|  | expr (app &&fx, const source_location &loc) | 
|  | 
|  | expr (expr *p, const YYLTYPE &loc, negate_tag) | 
|  | 
|  | expr (let &&declaration, const YYLTYPE &loc) | 
|  | 
|  | expr (lambda &&fun, const YYLTYPE &loc) | 
|  | 
|  | expr (expr_kind which, cond &&conditional, const YYLTYPE &loc) | 
|  | 
|  | expr (w_loop &&loop, const YYLTYPE &loc) | 
|  | 
|  | expr (f_loop &&loop, const YYLTYPE &loc) | 
|  | 
|  | expr (c_loop &&loop, const YYLTYPE &loc) | 
|  | 
|  | expr (sub &&s, const YYLTYPE &loc) | 
|  | 
|  | expr (sub &&s, const source_location &loc) | 
|  | 
|  | expr (slc &&s, const YYLTYPE &loc) | 
|  | 
|  | expr (cast &&c, const YYLTYPE &loc) | 
|  | 
|  | expr (op_cast &&c, const YYLTYPE &loc) | 
|  | 
|  | expr (assignment &&a, const YYLTYPE &loc) | 
|  | 
|  | expr (comp_assignment &&ca, const YYLTYPE &loc) | 
|  | 
|  | expr (sequence &&s, unsigned which, const YYLTYPE &loc) | 
|  |