diff options
Diffstat (limited to 'core/ops.rs')
-rw-r--r-- | core/ops.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/core/ops.rs b/core/ops.rs index 2614c3a87..5f1bf67ef 100644 --- a/core/ops.rs +++ b/core/ops.rs @@ -183,7 +183,7 @@ pub struct OpState { pub get_error_class_fn: GetErrorClassFn, pub tracker: OpsTracker, pub last_fast_op_error: Option<AnyError>, - gotham_state: GothamState, + pub(crate) gotham_state: GothamState, } impl OpState { @@ -196,6 +196,12 @@ impl OpState { tracker: OpsTracker::new(ops_count), } } + + /// Clear all user-provided resources and state. + pub(crate) fn clear(&mut self) { + std::mem::take(&mut self.gotham_state); + std::mem::take(&mut self.resource_table); + } } impl Deref for OpState { |