public T GetData <T>() where T : struct, IFlatbufferObject { T?data = m_Data.ActiondataUnion <T>(); Assert.IsTrue(data.HasValue, $"AActionItem::GetData<{typeof(T).Name}>->data not exist"); return(data.Value); }