diff --git a/cmake/external/onnx_protobuf.natvis b/cmake/external/onnx_protobuf.natvis
index c0a6fec4db..e973de6591 100644
--- a/cmake/external/onnx_protobuf.natvis
+++ b/cmake/external/onnx_protobuf.natvis
@@ -33,67 +33,73 @@
+
+ {{ { ( *(std::string*)(ptr_ & ~0x3) } }}
+
+
+
+
- {{ {key_.tagged_ptr_}:{value_.tagged_ptr_} }}
+ {{ {_impl_.key_.tagged_ptr_}:{_impl_.value_.tagged_ptr_} }}
- - key_.tagged_ptr_
- - value_.tagged_ptr_
+ - _impl_.key_.tagged_ptr_
+ - _impl_.value_.tagged_ptr_
- {{ tensor_name={tensor_name_.tagged_ptr_} }}
+ {{ tensor_name={_impl_.tensor_name_.tagged_ptr_} }}
- - tensor_name_.tagged_ptr_
- - quant_parameter_tensor_names_
+ - _impl_.tensor_name_.tagged_ptr_
+ - _impl_.quant_parameter_tensor_names_
-
- {{ name={name_.tagged_ptr_} }}
+
+ {{ name={_impl_.name_.tagged_ptr_} }}
- - name_.tagged_ptr_
- - type_
+ - _impl_.name_.tagged_ptr_
+ - _impl_.type_
- _has_type()
- {{ domain={ domain_.tagged_ptr_ }, version={ version_ } }}
+ {{ domain={ _impl_.domain_.tagged_ptr_ }, version={ _impl_.version_ } }}
-
-
-
-
- {{ name={ name_.tagged_ptr_ }, type={ (AttributeProto_AttributeType)type_ } }}
+
+
+
+
+ {{ name={ name_.tagged_ptr_ }, type={ (AttributeProto_AttributeType)_impl_.type_ } }}
- - name_.tagged_ptr_
- - (AttributeProto_AttributeType)type_
- - i_
- - ints_
- - f_
- - floats_
- - s_.tagged_ptr_
- - strings_
- - t_
- - tensors_
- - t_
- - graphs_
- - t_
- - type_protos_
- - sparse_tensor_
- - sparse_tensors_
- - ref_attr_name_.tagged_ptr_
- - doc_string_.tagged_ptr_
+ - _impl_.name_.tagged_ptr_
+ - (AttributeProto_AttributeType)_impl_.type_
+ - _impl_.i_
+ - _impl_.ints_
+ - _impl_.f_
+ - _impl_.floats_
+ - _impl_.s_.tagged_ptr_
+ - _impl_.strings_
+ - _impl_.t_
+ - _impl_.tensors_
+ - _impl_.t_
+ - _impl_.graphs_
+ - _impl_.t_
+ - _impl_.type_protos_
+ - _impl_.sparse_tensor_
+ - _impl_.sparse_tensors_
+ - _impl_.ref_attr_name_.tagged_ptr_
+ - _impl_.doc_string_.tagged_ptr_
- _has_tensor()
- _has_graph()
- _has_type_proto()
@@ -102,128 +108,128 @@
- {{ name={ name_.tagged_ptr_ }, domain={ domain_.tagged_ptr_ } }}
+ {{ name={ _impl_.name_.tagged_ptr_ }, domain={ _impl_.domain_.tagged_ptr_ } }}
- - name_.tagged_ptr_
- - domain_.tagged_ptr_
- - op_type_.tagged_ptr_
- - input_
- - output_
- - attribute_
+ - _impl_.name_.tagged_ptr_
+ - _impl_.domain_.tagged_ptr_
+ - _impl_.op_type_.tagged_ptr_
+ - _impl_.input_
+ - _impl_.output_
+ - _impl_.attribute_
- {{ name={ name_.tagged_ptr_ }, domain={ domain_.tagged_ptr_ } }}
+ {{ name={ _impl_.name_.tagged_ptr_ }, domain={ _impl_.domain_.tagged_ptr_ } }}
- - opset_import_
- - input_
- - output_
- - node_
- - doc_string_.tagged_ptr_
+ - _impl_.opset_import_
+ - _impl_.input_
+ - _impl_.output_
+ - _impl_.node_
+ - _impl_.doc_string_.tagged_ptr_
- {{ name={ name_.tagged_ptr_ } }}
+ {{ name={ _impl_.name_.tagged_ptr_ } }}
- - name_.tagged_ptr_
- - value_info_
- - input_
- - output_
- - node_
- - initializer_
- - sparse_initializer_
- - doc_string_.tagged_ptr_
+ - _impl_.name_.tagged_ptr_
+ - _impl_.value_info_
+ - _impl_.input_
+ - _impl_.output_
+ - _impl_.node_
+ - _impl_.initializer_
+ - _impl_.sparse_initializer_
+ - _impl_.doc_string_.tagged_ptr_
- {{ producer={producer_name_.tagged_ptr_}, domain={ domain_.tagged_ptr_ } }}
+ {{ producer={_impl_.producer_name_.tagged_ptr_}, domain={ _impl_.domain_.tagged_ptr_ } }}
- - opset_import_
- - metadata_props_
- - producer_version_.tagged_ptr_
- - ir_version_
- - model_version_
- - doc_string_.tagged_ptr_
- - graph_
+ - _impl_.opset_import_
+ - _impl_.metadata_props_
+ - _impl_.producer_version_.tagged_ptr_
+ - _impl_.ir_version_
+ - _impl_.model_version_
+ - _impl_.doc_string_.tagged_ptr_
+ - _impl_.graph_
- empty
- {{ v = {value_.dim_value_} }}
- {{ p = {value_.dim_param_.tagged_ptr_} }}
+ empty
+ {{ v = {_impl_.value_.dim_value_} }}
+ {{ p = {_impl_.value_.dim_param_.tagged_ptr_} }}
- {{ size={ dim_.current_size_ } }}
+ {{ size={ _impl_.dim_.current_size_ } }}
- - dim_
+ - _impl_.dim_
- {{ type={ (ValueCase)*_oneof_case_ } }}
+ {{ type={ (ValueCase)*_impl_._oneof_case_ } }}
- - (ValueCase)*_oneof_case_
- - value_.tensor_type_
- - value_.sequence_type_
- - value_.map_type_
- - value_.sparse_tensor_type_
- - value_.optional_type_
- - denotation_.tagged_ptr_
+ - (ValueCase)*_impl_._oneof_case_
+ - _impl_.value_.tensor_type_
+ - _impl_.value_.sequence_type_
+ - _impl_.value_.map_type_
+ - _impl_.value_.sparse_tensor_type_
+ - _impl_.value_.optional_type_
+ - _impl_.denotation_.tagged_ptr_
-
- {{ elem_type={ (TensorProto_DataType)elem_type_ } }}
+
+ {{ elem_type={ (TensorProto_DataType)_impl_.elem_type_ } }}
- - (TensorProto_DataType)elem_type_
- - shape_
+ - (TensorProto_DataType)_impl_.elem_type_
+ - _impl_.shape_
- _has_shape()
-
- {{ elem_type={ *elem_type_ } }}
+
+ {{ elem_type={ *_impl_.elem_type_ } }}
- - elem_type_
+ - _impl_.elem_type_
- _has_element_type()
-
- {{ key_type={ (TensorProto_DataType)key_type_ } }}
+
+ {{ key_type={ (TensorProto_DataType)_impl_.key_type_ } }}
- - (TensorProto_DataType)key_type_
- - value_type_
+ - (TensorProto_DataType)_impl_.key_type_
+ - _impl_.value_type_
- _has_value_type()
-
- {{ elem_type={ (TensorProto_DataType)elem_type_ } }}
+
+ {{ elem_type={ (TensorProto_DataType)_impl_.elem_type_ } }}
- - (TensorProto_DataType)elem_type_
- - shape_
+ - (TensorProto_DataType)_impl_.elem_type_
+ - _impl_.shape_
- _has_shape()
-
- {{ elem_type={ *elem_type_ } }}
+
+ {{ elem_type={ *_impl_.elem_type_ } }}
- - elem_type_
+ - _impl_.elem_type_
- _has_element_type()
@@ -236,40 +242,40 @@
-
-
-
-
-
+
+
+
+
+
- {{ name={name_.tagged_ptr_}, data_type={ (TensorProto_DataType)data_type_ } }}
+ {{ name={name_.tagged_ptr_}, data_type={ (TensorProto_DataType)_impl_.data_type_ } }}
- - name_.tagged_ptr_
- - (TensorProto_DataType)data_type_
+ - _impl_.name_.tagged_ptr_
+ - (TensorProto_DataType)_impl_.data_type_
- 1
- _shape_size_1()
- _shape_size_2()
- _shape_size_3()
- _shape_size_4()
- _shape_size_5()
- - dims_
- - float_data_
- - int32_data_
- - int32_data_
- - int32_data_
- - int32_data_
- - int64_data_
- - int64_data_
- - uint64_data_
- - double_data_
- - string_data_
- - (std::string*)(raw_data_.tagged_ptr_.ptr_)
- - (TensorProto_DataLocation) data_location_
- - external_data_
+ - _impl_.dims_
+ - _impl_.float_data_
+ - _impl_.int32_data_
+ - _impl_.int32_data_
+ - _impl_.int32_data_
+ - _impl_.int32_data_
+ - _impl_.int64_data_
+ - _impl_.int64_data_
+ - _impl_.uint64_data_
+ - _impl_.double_data_
+ - _impl_.string_data_
+ - (std::string*)(_impl_.raw_data_.tagged_ptr_)
+ - (TensorProto_DataLocation) _impl_.data_location_
+ - _impl_.external_data_
- _has_raw_data()
- _has_data_location()
- _has_segment()
@@ -281,9 +287,9 @@
{{ SparseTensorProto }}
- - dims_
- - values_
- - indices_
+ - _impl_.dims_
+ - _impl_.values_
+ - _impl_.indices_
- _has_values()
- _has_indices()