| 129 | } |
| 130 | |
| 131 | void |
| 132 | db_set_cmd(db_expr_t dummy1, bool dummy2, db_expr_t dummy3, char *dummy4) |
| 133 | { |
| 134 | struct db_variable *vp; |
| 135 | db_expr_t value; |
| 136 | int t; |
| 137 | |
| 138 | t = db_read_token(); |
| 139 | if (t == tEOL) { |
| 140 | for (vp = db_vars; vp < db_evars; vp++) { |
| 141 | if (!db_read_variable(vp, &value)) { |
| 142 | db_printf("$%s\n", vp->name); |
| 143 | continue; |
| 144 | } |
| 145 | db_printf("$%-8s = %ld\n", |
| 146 | vp->name, (unsigned long)value); |
| 147 | } |
| 148 | return; |
| 149 | } |
| 150 | if (t != tDOLLAR) { |
| 151 | db_error("Unknown variable\n"); |
| 152 | return; |
| 153 | } |
| 154 | if (!db_find_variable(&vp)) { |
| 155 | db_error("Unknown variable\n"); |
| 156 | return; |
| 157 | } |
| 158 | |
| 159 | t = db_read_token(); |
| 160 | if (t != tEQ) |
| 161 | db_unread_token(t); |
| 162 | |
| 163 | if (!db_expression(&value)) { |
| 164 | db_error("No value\n"); |
| 165 | return; |
| 166 | } |
| 167 | if (db_read_token() != tEOL) |
| 168 | db_error("?\n"); |
| 169 | |
| 170 | db_write_variable(vp, value); |
| 171 | } |
nothing calls this directly
no test coverage detected