low.release
← low dialect
End the lifetime of a complete typed managed-reference carrier. The source identity is invalid afterward. An owned carrier releases its reference; a borrowed or null carrier is only cleared. A ptr carrier may hold compiler-acquired protection, which is released here without changing its borrowed source type. Native finalization occurs at this operation when the carrier holds the last owner.
Operation contract
| Property |
Value |
| Semantic phase |
executable |
| Traits |
ObservableEffect |
| Ownership effects |
move value (by_value) |
Signature
| Kind |
Name |
Type |
Cardinality |
Description |
| Operand |
value |
register |
required |
— |
Examples
low.release %owner : reg<vm.ref : ref<@Object>>