From 528ccdd4585bde6d54dfcd9dcfa94ba6af5efc42 Mon Sep 17 00:00:00 2001 From: Robert Date: Wed, 5 Sep 2018 18:15:30 -0700 Subject: [PATCH] rust: more builder lifetimes predicates (#4923) --- src/idl_gen_rust.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/idl_gen_rust.cpp b/src/idl_gen_rust.cpp index e56cdb948..38773e4e9 100644 --- a/src/idl_gen_rust.cpp +++ b/src/idl_gen_rust.cpp @@ -345,14 +345,16 @@ class RustGenerator : public BaseGenerator { const Namespace *CurrentNameSpace() const { return cur_name_space_; } - // Determine if a Type needs a lifetime template parameter when used in Rust. - bool TypeNeedsLifetimeParameter(const Type &type) const { + // Determine if a Type needs a lifetime template parameter when used in the + // Rust builder args. + bool TableBuilderTypeNeedsLifetime(const Type &type) const { switch (GetFullType(type)) { case ftInteger: case ftFloat: case ftBool: case ftEnumKey: - case ftUnionKey: { return false; } + case ftUnionKey: + case ftUnionValue: { return false; } default: { return true; } } } @@ -368,7 +370,7 @@ class RustGenerator : public BaseGenerator { continue; } - if (TypeNeedsLifetimeParameter(field.value.type)) { + if (TableBuilderTypeNeedsLifetime(field.value.type)) { return true; } }