(
&mut self,
s: S,
d: D,
this_id: NodeID,
name: &Name,
value: &Expr,
)
| 150 | } |
| 151 | |
| 152 | pub fn change_var( |
| 153 | &mut self, |
| 154 | s: S, |
| 155 | d: D, |
| 156 | this_id: NodeID, |
| 157 | name: &Name, |
| 158 | value: &Expr, |
| 159 | ) -> io::Result<()> { |
| 160 | let value_id = self.id.new_id(); |
| 161 | self.begin_inputs()?; |
| 162 | self.input(s, d, "VALUE", value, value_id)?; |
| 163 | self.end_obj()?; // inputs |
| 164 | match s.qualify_name(d, name) { |
| 165 | Some(QualifiedName::Var(qualified_name, _)) => { |
| 166 | self.single_field_id("VARIABLE", &qualified_name)? |
| 167 | } |
| 168 | Some(QualifiedName::List(..)) => { |
| 169 | d.report( |
| 170 | DiagnosticKind::UnrecognizedVariable(name.basename().clone()), |
| 171 | &name.span(), |
| 172 | ); |
| 173 | } |
| 174 | None => {} |
| 175 | } |
| 176 | self.end_obj()?; // node |
| 177 | self.expr(s, d, value, value_id, this_id) |
| 178 | } |
| 179 | |
| 180 | pub fn show(&mut self, s: S, d: D, name: &Name) -> io::Result<()> { |
| 181 | self.begin_inputs()?; |
no test coverage detected