From 19be5eb1ebfc92c66ebf39c81c46209df734e89f Mon Sep 17 00:00:00 2001 From: flywind Date: Fri, 5 Mar 2021 23:21:33 +0800 Subject: Add unsafeIsolate and extract to std/isolation [backport:1.4] (#17263) --- lib/std/isolation.nim | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'lib') diff --git a/lib/std/isolation.nim b/lib/std/isolation.nim index 7c44f47fb..70395d6d4 100644 --- a/lib/std/isolation.nim +++ b/lib/std/isolation.nim @@ -30,3 +30,11 @@ func isolate*[T](value: sink T): Isolated[T] {.magic: "Isolate".} = ## Please read https://github.com/nim-lang/RFCs/issues/244 ## for more details. Isolated[T](value: value) + +func unsafeIsolate*[T](value: sink T): Isolated[T] = + ## Creates an isolated subgraph from the expression `value`. + Isolated[T](value: value) + +func extract*[T](src: var Isolated[T]): T = + ## Returns the internal value of `src`. + result = move(src.value) -- cgit 1.4.1-2-gfad0