summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaudius "keldu" Holeksa <mail@keldu.de>2023-07-16 21:48:26 +0200
committerClaudius "keldu" Holeksa <mail@keldu.de>2023-07-16 21:48:51 +0200
commit0b655680ff45c06688e87f6b6ca1c5ff8d1f7c71 (patch)
treeb17410d97e65f5aa3e8760a0099e73b185a52954
parentd37b120cc3b43c49e2c3a750f73e8ed62c086b0e (diff)
c++,codec: Added init to union for non default init in native case
-rw-r--r--src/codec/data.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/codec/data.h b/src/codec/data.h
index 76be8e5..55f4b26 100644
--- a/src/codec/data.h
+++ b/src/codec/data.h
@@ -96,6 +96,12 @@ public:
}
template<string_literal lit>
+ data<typename parameter_pack_type<lit, literals...>::value, T...>::type, encode::Native>& init(){
+ value_ = data<typename parameter_pack_type<lit, literals...>::value, T...>::type, encode::Native>{};
+ return get<lit>();
+ }
+
+ template<string_literal lit>
bool holds_alternative() const {
return (parameter_key_pack_index<lit, literals...>::value == value_.index());
}