This is called if the resource should be closed *after* an exception was thrown.
This is called if the resource should be closed *after* an exception was thrown. The default implementation is to call close itself.
Lets us know if an exception is one that should be fatal, or rethrown *immediately*.
Lets us know if an exception is one that should be fatal, or rethrown *immediately*.
If this returns true, then the ARM block will not attempt to catch and hold the exception, but immediately throw it. By default this returns true for an VirtualMachineError.
Lets us know if an exception should be rethrown *after* an arm block completes.
Lets us know if an exception should be rethrown *after* an arm block completes. These include exceptions used for early termination, like ControlThrowable.
Opens a resource for manipulation.
Opens a resource for manipulation.
*Note:* If the resource is already open by definition of existence, then this method should perform a no-op (the default implementation).
This is a type trait for types that are considered 'resources'. These types must be opened (potentially) and closed at some point.