aboutsummaryrefslogtreecommitdiff
path: root/libbutl/utility.ixx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2018-10-17 13:28:05 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2018-10-17 13:28:05 +0300
commitb517f9cd2684d2b6a5540c9ff64bad19acee4bc1 (patch)
tree9d195ed3d7a28ed5dba470c08df1e98e62107d61 /libbutl/utility.ixx
parent69f5ba17eef319bc112cadd54f18cccc10495ecb (diff)
Add function_cast() to utility.mxx
Diffstat (limited to 'libbutl/utility.ixx')
-rw-r--r--libbutl/utility.ixx9
1 files changed, 9 insertions, 0 deletions
diff --git a/libbutl/utility.ixx b/libbutl/utility.ixx
index 565a694..e17462a 100644
--- a/libbutl/utility.ixx
+++ b/libbutl/utility.ixx
@@ -212,4 +212,13 @@ namespace butl
return nullopt;
}
+
+ template <typename F>
+ inline F
+ function_cast (void* p)
+ {
+ union { void* p; F f; } r;
+ r.p = p;
+ return r.f;
+ }
}