(self)
| 213 | # Pointer operations (dereference/address-of) |
| 214 | # ------------------------------ |
| 215 | def deref(self): # *self (dereference) |
| 216 | if not self.type.is_pointer(): |
| 217 | raise TypeError(f"Cannot dereference non-pointer type {self.type}") |
| 218 | return UnOp(UnOpKind.DEREF, self, self.type.inner_type) |
| 219 | |
| 220 | def addr_of(self): # &self (address-of) |
| 221 | return UnOp(UnOpKind.ADDR_OF, self, ptr[self.type]) |