mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-29 20:14:01 +00:00
Update protobuf Natvis visualization (#16911)
### Description Protobuf library update broke debug visualization. ### Motivation and Context Hard to debug
This commit is contained in:
parent
77b2b618b2
commit
50764362ac
1 changed files with 126 additions and 120 deletions
246
cmake/external/onnx_protobuf.natvis
vendored
246
cmake/external/onnx_protobuf.natvis
vendored
|
|
@ -33,67 +33,73 @@
|
|||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="google::protobuf::internal::TaggedStringPtr">
|
||||
<DisplayString>{{ { ( *(std::string*)(ptr_ & ~0x3) } }}</DisplayString>
|
||||
<Expand>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<!--ONNX Specific protobuf classes
|
||||
Some examples show calling functions on classes, however, this is not supported in VS2019
|
||||
Thus we need to come up with has_*() utils.
|
||||
-->
|
||||
<Type Name="onnx::StringStringEntryProto">
|
||||
<DisplayString>{{ {key_.tagged_ptr_}:{value_.tagged_ptr_} }}</DisplayString>
|
||||
<DisplayString>{{ {_impl_.key_.tagged_ptr_}:{_impl_.value_.tagged_ptr_} }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[key]">key_.tagged_ptr_</Item>
|
||||
<Item Name="[value]">value_.tagged_ptr_</Item>
|
||||
<Item Name="[key]">_impl_.key_.tagged_ptr_</Item>
|
||||
<Item Name="[value]">_impl_.value_.tagged_ptr_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TensorAnnotation">
|
||||
<DisplayString>{{ tensor_name={tensor_name_.tagged_ptr_} }}</DisplayString>
|
||||
<DisplayString>{{ tensor_name={_impl_.tensor_name_.tagged_ptr_} }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[tensor_name]">tensor_name_.tagged_ptr_</Item>
|
||||
<Item Name="[quant_parameter_tensor_names]">quant_parameter_tensor_names_</Item>
|
||||
<Item Name="[tensor_name]">_impl_.tensor_name_.tagged_ptr_</Item>
|
||||
<Item Name="[quant_parameter_tensor_names]">_impl_.quant_parameter_tensor_names_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::ValueInfoProto">
|
||||
<Intrinsic Name="_has_type" Expression="(_has_bits_.has_bits_[0] & 0x00000004u) != 0"/>
|
||||
<DisplayString>{{ name={name_.tagged_ptr_} }}</DisplayString>
|
||||
<Intrinsic Name="_has_type" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000004u) != 0"/>
|
||||
<DisplayString>{{ name={_impl_.name_.tagged_ptr_} }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[name]">name_.tagged_ptr_</Item>
|
||||
<Item Name="[type]" Condition="_has_type()">type_</Item>
|
||||
<Item Name="[name]">_impl_.name_.tagged_ptr_</Item>
|
||||
<Item Name="[type]" Condition="_has_type()">_impl_.type_</Item>
|
||||
<Item Name="[has_type]">_has_type()</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::OperatorSetIdProto">
|
||||
<DisplayString>{{ domain={ domain_.tagged_ptr_ }, version={ version_ } }}</DisplayString>
|
||||
<DisplayString>{{ domain={ _impl_.domain_.tagged_ptr_ }, version={ _impl_.version_ } }}</DisplayString>
|
||||
<Expand>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::AttributeProto">
|
||||
<Intrinsic Name="_has_tensor" Expression="(_has_bits_.has_bits_[0] & 0x00000010u) != 0"/>
|
||||
<Intrinsic Name="_has_graph" Expression="(_has_bits_.has_bits_[0] & 0x00000020u) != 0"/>
|
||||
<Intrinsic Name="_has_type_proto" Expression="(_has_bits_.has_bits_[0] & 0x00000040u) != 0"/>
|
||||
<Intrinsic Name="_has_sparse_tensor" Expression="(_has_bits_.has_bits_[0] & 0x00000080u) != 0"/>
|
||||
<DisplayString>{{ name={ name_.tagged_ptr_ }, type={ (AttributeProto_AttributeType)type_ } }}</DisplayString>
|
||||
<Intrinsic Name="_has_tensor" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000010u) != 0"/>
|
||||
<Intrinsic Name="_has_graph" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000020u) != 0"/>
|
||||
<Intrinsic Name="_has_type_proto" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000040u) != 0"/>
|
||||
<Intrinsic Name="_has_sparse_tensor" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000080u) != 0"/>
|
||||
<DisplayString>{{ name={ name_.tagged_ptr_ }, type={ (AttributeProto_AttributeType)_impl_.type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[name]">name_.tagged_ptr_</Item>
|
||||
<Item Name="[type]">(AttributeProto_AttributeType)type_</Item>
|
||||
<Item Name="[i]" Condition="type_ == AttributeProto_AttributeType_INT">i_</Item>
|
||||
<Item Name="[ints]" Condition="type_ == AttributeProto_AttributeType_INTS">ints_</Item>
|
||||
<Item Name="[f]" Condition="type_ == AttributeProto_AttributeType_FLOAT">f_</Item>
|
||||
<Item Name="[floats]" Condition="type_ == AttributeProto_AttributeType_FLOATS">floats_</Item>
|
||||
<Item Name="[s]" Condition="type_ == AttributeProto_AttributeType_STRING">s_.tagged_ptr_</Item>
|
||||
<Item Name="[strings]" Condition="type_ == AttributeProto_AttributeType_STRINGS">strings_</Item>
|
||||
<Item Name="[t]" Condition="type_ == AttributeProto_AttributeType_TENSOR && _has_tensor()">t_</Item>
|
||||
<Item Name="[tensors]" Condition="type_ == AttributeProto_AttributeType_TENSORS">tensors_</Item>
|
||||
<Item Name="[g]" Condition="type_ == AttributeProto_AttributeType_GRAPH && _has_graph()">t_</Item>
|
||||
<Item Name="[graphs]" Condition="type_ == AttributeProto_AttributeType_GRAPHS">graphs_</Item>
|
||||
<Item Name="[tp]" Condition="type_ == AttributeProto_AttributeType_TYPE_PROTO && _has_type_proto()">t_</Item>
|
||||
<Item Name="[type_protos]" Condition="type_ == AttributeProto_AttributeType_TYPE_PROTOS">type_protos_</Item>
|
||||
<Item Name="[sparse_tensor]" Condition="type_ == AttributeProto_AttributeType_SPARSE_TENSOR && _has_sparse_tensor()">sparse_tensor_</Item>
|
||||
<Item Name="[sparse_tensors]" Condition="type_ == AttributeProto_AttributeType_SPARSE_TENSORS">sparse_tensors_</Item>
|
||||
<Item Name="[ref_attr_name]">ref_attr_name_.tagged_ptr_</Item>
|
||||
<Item Name="[doc]">doc_string_.tagged_ptr_</Item>
|
||||
<Item Name="[name]">_impl_.name_.tagged_ptr_</Item>
|
||||
<Item Name="[type]">(AttributeProto_AttributeType)_impl_.type_</Item>
|
||||
<Item Name="[i]" Condition="_impl_.type_ == AttributeProto_AttributeType_INT">_impl_.i_</Item>
|
||||
<Item Name="[ints]" Condition="_impl_.type_ == AttributeProto_AttributeType_INTS">_impl_.ints_</Item>
|
||||
<Item Name="[f]" Condition="_impl_.type_ == AttributeProto_AttributeType_FLOAT">_impl_.f_</Item>
|
||||
<Item Name="[floats]" Condition="_impl_.type_ == AttributeProto_AttributeType_FLOATS">_impl_.floats_</Item>
|
||||
<Item Name="[s]" Condition="_impl_.type_ == AttributeProto_AttributeType_STRING">_impl_.s_.tagged_ptr_</Item>
|
||||
<Item Name="[strings]" Condition="_impl_.type_ == AttributeProto_AttributeType_STRINGS">_impl_.strings_</Item>
|
||||
<Item Name="[t]" Condition="_impl_.type_ == AttributeProto_AttributeType_TENSOR && _has_tensor()">_impl_.t_</Item>
|
||||
<Item Name="[tensors]" Condition="_impl_.type_ == AttributeProto_AttributeType_TENSORS">_impl_.tensors_</Item>
|
||||
<Item Name="[g]" Condition="_impl_.type_ == AttributeProto_AttributeType_GRAPH && _has_graph()">_impl_.t_</Item>
|
||||
<Item Name="[graphs]" Condition="_impl_.type_ == AttributeProto_AttributeType_GRAPHS">_impl_.graphs_</Item>
|
||||
<Item Name="[tp]" Condition="_impl_.type_ == AttributeProto_AttributeType_TYPE_PROTO && _has_type_proto()">_impl_.t_</Item>
|
||||
<Item Name="[type_protos]" Condition="_impl_.type_ == AttributeProto_AttributeType_TYPE_PROTOS">_impl_.type_protos_</Item>
|
||||
<Item Name="[sparse_tensor]" Condition="_impl_.type_ == AttributeProto_AttributeType_SPARSE_TENSOR && _has_sparse_tensor()">_impl_.sparse_tensor_</Item>
|
||||
<Item Name="[sparse_tensors]" Condition="_impl_.type_ == AttributeProto_AttributeType_SPARSE_TENSORS">_impl_.sparse_tensors_</Item>
|
||||
<Item Name="[ref_attr_name]">_impl_.ref_attr_name_.tagged_ptr_</Item>
|
||||
<Item Name="[doc]">_impl_.doc_string_.tagged_ptr_</Item>
|
||||
<Item Name="[has_tensor]">_has_tensor()</Item>
|
||||
<Item Name="[has_graph]">_has_graph()</Item>
|
||||
<Item Name="[has_type_proto]">_has_type_proto()</Item>
|
||||
|
|
@ -102,128 +108,128 @@
|
|||
</Type>
|
||||
|
||||
<Type Name="onnx::NodeProto">
|
||||
<DisplayString>{{ name={ name_.tagged_ptr_ }, domain={ domain_.tagged_ptr_ } }}</DisplayString>
|
||||
<DisplayString>{{ name={ _impl_.name_.tagged_ptr_ }, domain={ _impl_.domain_.tagged_ptr_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[name]">name_.tagged_ptr_</Item>
|
||||
<Item Name="[domain]">domain_.tagged_ptr_</Item>
|
||||
<Item Name="[op_type]">op_type_.tagged_ptr_</Item>
|
||||
<Item Name="[input]">input_</Item>
|
||||
<Item Name="[output]">output_</Item>
|
||||
<Item Name="[attribute]">attribute_</Item>
|
||||
<Item Name="[name]">_impl_.name_.tagged_ptr_</Item>
|
||||
<Item Name="[domain]">_impl_.domain_.tagged_ptr_</Item>
|
||||
<Item Name="[op_type]">_impl_.op_type_.tagged_ptr_</Item>
|
||||
<Item Name="[input]">_impl_.input_</Item>
|
||||
<Item Name="[output]">_impl_.output_</Item>
|
||||
<Item Name="[attribute]">_impl_.attribute_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::FunctionProto">
|
||||
<DisplayString>{{ name={ name_.tagged_ptr_ }, domain={ domain_.tagged_ptr_ } }}</DisplayString>
|
||||
<DisplayString>{{ name={ _impl_.name_.tagged_ptr_ }, domain={ _impl_.domain_.tagged_ptr_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[opset_import]">opset_import_</Item>
|
||||
<Item Name="[input]">input_</Item>
|
||||
<Item Name="[output]">output_</Item>
|
||||
<Item Name="[node]">node_</Item>
|
||||
<Item Name="[doc]" ExcludeView="simple">doc_string_.tagged_ptr_</Item>
|
||||
<Item Name="[opset_import]">_impl_.opset_import_</Item>
|
||||
<Item Name="[input]">_impl_.input_</Item>
|
||||
<Item Name="[output]">_impl_.output_</Item>
|
||||
<Item Name="[node]">_impl_.node_</Item>
|
||||
<Item Name="[doc]" ExcludeView="simple">_impl_.doc_string_.tagged_ptr_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::GraphProto">
|
||||
<DisplayString>{{ name={ name_.tagged_ptr_ } }}</DisplayString>
|
||||
<DisplayString>{{ name={ _impl_.name_.tagged_ptr_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[name]">name_.tagged_ptr_</Item>
|
||||
<Item Name="[value_info]">value_info_</Item>
|
||||
<Item Name="[input]">input_</Item>
|
||||
<Item Name="[output]">output_</Item>
|
||||
<Item Name="[node]">node_</Item>
|
||||
<Item Name="[initializer]">initializer_</Item>
|
||||
<Item Name="[sparse_initializer]">sparse_initializer_</Item>
|
||||
<Item Name="[doc]" ExcludeView="simple">doc_string_.tagged_ptr_</Item>
|
||||
<Item Name="[name]">_impl_.name_.tagged_ptr_</Item>
|
||||
<Item Name="[value_info]">_impl_.value_info_</Item>
|
||||
<Item Name="[input]">_impl_.input_</Item>
|
||||
<Item Name="[output]">_impl_.output_</Item>
|
||||
<Item Name="[node]">_impl_.node_</Item>
|
||||
<Item Name="[initializer]">_impl_.initializer_</Item>
|
||||
<Item Name="[sparse_initializer]">_impl_.sparse_initializer_</Item>
|
||||
<Item Name="[doc]" ExcludeView="simple">_impl_.doc_string_.tagged_ptr_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::ModelProto">
|
||||
<DisplayString>{{ producer={producer_name_.tagged_ptr_}, domain={ domain_.tagged_ptr_ } }}</DisplayString>
|
||||
<DisplayString>{{ producer={_impl_.producer_name_.tagged_ptr_}, domain={ _impl_.domain_.tagged_ptr_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[opset_import]" ExcludeView="simple">opset_import_</Item>
|
||||
<Item Name="[metadata_props]" ExcludeView="simple">metadata_props_</Item>
|
||||
<Item Name="[producer_version]" ExcludeView="simple">producer_version_.tagged_ptr_</Item>
|
||||
<Item Name="[ir_version]" ExcludeView="simple">ir_version_</Item>
|
||||
<Item Name="[model_version]" ExcludeView="simple">model_version_</Item>
|
||||
<Item Name="[doc]" ExcludeView="simple">doc_string_.tagged_ptr_</Item>
|
||||
<Item Name="[graph]" ExcludeView="simple">graph_</Item>
|
||||
<Item Name="[opset_import]" ExcludeView="simple">_impl_.opset_import_</Item>
|
||||
<Item Name="[metadata_props]" ExcludeView="simple">_impl_.metadata_props_</Item>
|
||||
<Item Name="[producer_version]" ExcludeView="simple">_impl_.producer_version_.tagged_ptr_</Item>
|
||||
<Item Name="[ir_version]" ExcludeView="simple">_impl_.ir_version_</Item>
|
||||
<Item Name="[model_version]" ExcludeView="simple">_impl_.model_version_</Item>
|
||||
<Item Name="[doc]" ExcludeView="simple">_impl_.doc_string_.tagged_ptr_</Item>
|
||||
<Item Name="[graph]" ExcludeView="simple">_impl_.graph_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TensorShapeProto_Dimension">
|
||||
<DisplayString Condition="*_oneof_case_ == 0">empty</DisplayString>
|
||||
<DisplayString Condition="*_oneof_case_ == kDimValue">{{ v = {value_.dim_value_} }}</DisplayString>
|
||||
<DisplayString Condition="*_oneof_case_ == kDimParam">{{ p = {value_.dim_param_.tagged_ptr_} }}</DisplayString>
|
||||
<DisplayString Condition="*_impl_._oneof_case_ == 0">empty</DisplayString>
|
||||
<DisplayString Condition="*_impl_._oneof_case_ == kDimValue">{{ v = {_impl_.value_.dim_value_} }}</DisplayString>
|
||||
<DisplayString Condition="*_impl_._oneof_case_ == kDimParam">{{ p = {_impl_.value_.dim_param_.tagged_ptr_} }}</DisplayString>
|
||||
<Expand>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TensorShapeProto">
|
||||
<DisplayString>{{ size={ dim_.current_size_ } }}</DisplayString>
|
||||
<DisplayString>{{ size={ _impl_.dim_.current_size_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[dims]" ExcludeView="simple">dim_</Item>
|
||||
<Item Name="[dims]" ExcludeView="simple">_impl_.dim_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<!--Type Protos-->
|
||||
<Type Name="onnx::TypeProto">
|
||||
<DisplayString>{{ type={ (ValueCase)*_oneof_case_ } }}</DisplayString>
|
||||
<DisplayString>{{ type={ (ValueCase)*_impl_._oneof_case_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[type]" ExcludeView="simple">(ValueCase)*_oneof_case_</Item>
|
||||
<Item Name="[tensor_type]" Condition="*_oneof_case_ == kTensorType" ExcludeView="simple">value_.tensor_type_</Item>
|
||||
<Item Name="[sequence_type]" Condition="*_oneof_case_ == kSequenceType" ExcludeView="simple">value_.sequence_type_</Item>
|
||||
<Item Name="[map_type]" Condition="*_oneof_case_ == kMapType" ExcludeView="simple">value_.map_type_</Item>
|
||||
<Item Name="[sparse_tensor_type]" Condition="*_oneof_case_ == kSparseTensorType" ExcludeView="simple">value_.sparse_tensor_type_</Item>
|
||||
<Item Name="[optional_type]" Condition="*_oneof_case_ == kOptionalType" ExcludeView="simple">value_.optional_type_</Item>
|
||||
<Item Name="[denotation]" ExcludeView="simple">denotation_.tagged_ptr_</Item>
|
||||
<Item Name="[type]" ExcludeView="simple">(ValueCase)*_impl_._oneof_case_</Item>
|
||||
<Item Name="[tensor_type]" Condition="(ValueCase)*_impl_._oneof_case_ == kTensorType" ExcludeView="simple">_impl_.value_.tensor_type_</Item>
|
||||
<Item Name="[sequence_type]" Condition="(ValueCase)*_impl_._oneof_case_ == kSequenceType" ExcludeView="simple">_impl_.value_.sequence_type_</Item>
|
||||
<Item Name="[map_type]" Condition="(ValueCase)*_impl_._oneof_case_ == kMapType" ExcludeView="simple">_impl_.value_.map_type_</Item>
|
||||
<Item Name="[sparse_tensor_type]" Condition="(ValueCase)*_impl_._oneof_case_ == kSparseTensorType" ExcludeView="simple">_impl_.value_.sparse_tensor_type_</Item>
|
||||
<Item Name="[optional_type]" Condition="(ValueCase)*_impl_._oneof_case_ == kOptionalType" ExcludeView="simple">_impl_.value_.optional_type_</Item>
|
||||
<Item Name="[denotation]" ExcludeView="simple">_impl_.denotation_.tagged_ptr_</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TypeProto_Tensor">
|
||||
<Intrinsic Name="_has_shape" Expression="(_has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString>{{ elem_type={ (TensorProto_DataType)elem_type_ } }}</DisplayString>
|
||||
<Intrinsic Name="_has_shape" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString>{{ elem_type={ (TensorProto_DataType)_impl_.elem_type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[elem_type]" ExcludeView="simple">(TensorProto_DataType)elem_type_</Item>
|
||||
<Item Name="[shape]" Condition="_has_shape()" ExcludeView="simple">shape_</Item>
|
||||
<Item Name="[elem_type]" ExcludeView="simple">(TensorProto_DataType)_impl_.elem_type_</Item>
|
||||
<Item Name="[shape]" Condition="_has_shape()" ExcludeView="simple">_impl_.shape_</Item>
|
||||
<Item Name="[has_shape]" ExcludeView="simple">_has_shape()</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TypeProto_Sequence">
|
||||
<Intrinsic Name="_has_element_type" Expression="(_has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString Condition="_has_element_type()">{{ elem_type={ *elem_type_ } }}</DisplayString>
|
||||
<Intrinsic Name="_has_element_type" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString Condition="_has_element_type()">{{ elem_type={ *_impl_.elem_type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[elem_type]" Condition="_has_element_type()" ExcludeView="simple">elem_type_</Item>
|
||||
<Item Name="[elem_type]" Condition="_has_element_type()" ExcludeView="simple">_impl_.elem_type_</Item>
|
||||
<Item Name="[has_element_type]" ExcludeView="simple">_has_element_type()</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TypeProto_Map">
|
||||
<Intrinsic Name="_has_value_type" Expression="(_has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString>{{ key_type={ (TensorProto_DataType)key_type_ } }}</DisplayString>
|
||||
<Intrinsic Name="_has_value_type" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString>{{ key_type={ (TensorProto_DataType)_impl_.key_type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[key_type]" ExcludeView="simple">(TensorProto_DataType)key_type_</Item>
|
||||
<Item Name="[value_type]" Condition="_has_value_type()" ExcludeView="simple">value_type_</Item>
|
||||
<Item Name="[key_type]" ExcludeView="simple">(TensorProto_DataType)_impl_.key_type_</Item>
|
||||
<Item Name="[value_type]" Condition="_has_value_type()" ExcludeView="simple">_impl_.value_type_</Item>
|
||||
<Item Name="[has_value_type]" ExcludeView="simple">_has_value_type()</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TypeProto_SparseTensor">
|
||||
<Intrinsic Name="_has_shape" Expression="(_has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString>{{ elem_type={ (TensorProto_DataType)elem_type_ } }}</DisplayString>
|
||||
<Intrinsic Name="_has_shape" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString>{{ elem_type={ (TensorProto_DataType)_impl_.elem_type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[elem_type]" ExcludeView="simple">(TensorProto_DataType)elem_type_</Item>
|
||||
<Item Name="[shape]" Condition="_has_shape()" ExcludeView="simple">shape_</Item>
|
||||
<Item Name="[elem_type]" ExcludeView="simple">(TensorProto_DataType)_impl_.elem_type_</Item>
|
||||
<Item Name="[shape]" Condition="_has_shape()" ExcludeView="simple">_impl_.shape_</Item>
|
||||
<Item Name="[has_shape]" ExcludeView="simple">_has_shape()</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
||||
<Type Name="onnx::TypeProto_Optional">
|
||||
<Intrinsic Name="_has_element_type" Expression="(_has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString Condition="_has_element_type()">{{ elem_type={ *elem_type_ } }}</DisplayString>
|
||||
<Intrinsic Name="_has_element_type" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000001u) != 0"/>
|
||||
<DisplayString Condition="_has_element_type()">{{ elem_type={ *_impl_.elem_type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[elem_type]" Condition="_has_element_type()" ExcludeView="simple">elem_type_</Item>
|
||||
<Item Name="[elem_type]" Condition="_has_element_type()" ExcludeView="simple">_impl_.elem_type_</Item>
|
||||
<Item Name="[has_element_type]" ExcludeView="simple">_has_element_type()</Item>
|
||||
</Expand>
|
||||
</Type>
|
||||
|
|
@ -236,40 +242,40 @@
|
|||
|
||||
<!--TODO Figure out how to calculate the size of the tensor given its shape. Loops are only possible in custom lists. -->
|
||||
<Type Name="onnx::TensorProto">
|
||||
<Intrinsic Name="_has_raw_data" Expression="(_has_bits_.has_bits_[0] & 0x00000002u) != 0" />
|
||||
<Intrinsic Name="_has_data_location" Expression="((_has_bits_.has_bits_[0] & 0x00000020u) != 0)" />
|
||||
<Intrinsic Name="_has_segment" Expression="((_has_bits_.has_bits_[0] & 0x00000008u) != 0)" />
|
||||
<Intrinsic Name="_shape_array" Expression="(int64_t*)dims_.arena_or_elements_" />
|
||||
<Intrinsic Name="_shape_size" Expression="dims_.current_size_" />
|
||||
<Intrinsic Name="_has_raw_data" Expression="(_impl_._has_bits_.has_bits_[0] & 0x00000002u) != 0" />
|
||||
<Intrinsic Name="_has_data_location" Expression="((_impl_._has_bits_.has_bits_[0] & 0x00000020u) != 0)" />
|
||||
<Intrinsic Name="_has_segment" Expression="((_impl_._has_bits_.has_bits_[0] & 0x00000008u) != 0)" />
|
||||
<Intrinsic Name="_shape_array" Expression="(int64_t*)_impl_.dims_.arena_or_elements_" />
|
||||
<Intrinsic Name="_shape_size" Expression="_impl_.dims_.current_size_" />
|
||||
<Intrinsic Name="_shape_size_1" Expression="_shape_array()[0]" />
|
||||
<Intrinsic Name="_shape_size_2" Expression="_shape_array()[0] * _shape_array()[1]"/>
|
||||
<Intrinsic Name="_shape_size_3" Expression="_shape_size_2() * _shape_array()[2]" />
|
||||
<Intrinsic Name="_shape_size_4" Expression="_shape_size_3() * _shape_array()[3]" />
|
||||
<Intrinsic Name="_shape_size_5" Expression="_shape_size_4() * _shape_array()[4]" />
|
||||
<DisplayString>{{ name={name_.tagged_ptr_}, data_type={ (TensorProto_DataType)data_type_ } }}</DisplayString>
|
||||
<DisplayString>{{ name={name_.tagged_ptr_}, data_type={ (TensorProto_DataType)_impl_.data_type_ } }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[name]" ExcludeView="simple">name_.tagged_ptr_</Item>
|
||||
<Item Name="[data_type]" ExcludeView="simple">(TensorProto_DataType)data_type_</Item>
|
||||
<Item Name="[name]" ExcludeView="simple">_impl_.name_.tagged_ptr_</Item>
|
||||
<Item Name="[data_type]" ExcludeView="simple">(TensorProto_DataType)_impl_.data_type_</Item>
|
||||
<Item Name="[size]" Condition="_shape_size() == 0" ExcludeView="simple">1</Item>
|
||||
<Item Name="[size]" Condition="_shape_size() == 1" ExcludeView="simple">_shape_size_1()</Item>
|
||||
<Item Name="[size]" Condition="_shape_size() == 2" ExcludeView="simple">_shape_size_2()</Item>
|
||||
<Item Name="[size]" Condition="_shape_size() == 3" ExcludeView="simple">_shape_size_3()</Item>
|
||||
<Item Name="[size]" Condition="_shape_size() == 4" ExcludeView="simple">_shape_size_4()</Item>
|
||||
<Item Name="[size]" Condition="_shape_size() == 5" ExcludeView="simple">_shape_size_5()</Item>
|
||||
<Item Name="[shape]" ExcludeView="simple">dims_</Item>
|
||||
<Item Name="[float_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_FLOAT && !_has_raw_data()">float_data_</Item>
|
||||
<Item Name="[bool_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_BOOL && !_has_raw_data()">int32_data_</Item>
|
||||
<Item Name="[int8_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_INT8 && !_has_raw_data()">int32_data_</Item>
|
||||
<Item Name="[uint8_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_UINT8 && !_has_raw_data()">int32_data_</Item>
|
||||
<Item Name="[int32_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_INT32 && !_has_raw_data()">int32_data_</Item>
|
||||
<Item Name="[uint32_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_UINT32 && !_has_raw_data()">int64_data_</Item>
|
||||
<Item Name="[int64_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_INT64 && !_has_raw_data()">int64_data_</Item>
|
||||
<Item Name="[uint64_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_UINT64 && !_has_raw_data()">uint64_data_</Item>
|
||||
<Item Name="[double_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_DOUBLE && !_has_raw_data()">double_data_</Item>
|
||||
<Item Name="[string_data]" ExcludeView="simple" Condition="data_type_ == TensorProto_DataType_STRING && !_has_raw_data()">string_data_</Item>
|
||||
<Item Name="[raw_data]" ExcludeView="simple" Condition="_has_raw_data()">(std::string*)(raw_data_.tagged_ptr_.ptr_)</Item>
|
||||
<Item Name="[data_location]" ExcludeView="simple" Condition="_has_data_location()">(TensorProto_DataLocation) data_location_</Item>
|
||||
<Item Name="[external_data]" ExcludeView="simple" Condition="_has_data_location()">external_data_</Item>
|
||||
<Item Name="[shape]" ExcludeView="simple">_impl_.dims_</Item>
|
||||
<Item Name="[float_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_FLOAT && !_has_raw_data()">_impl_.float_data_</Item>
|
||||
<Item Name="[bool_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_BOOL && !_has_raw_data()">_impl_.int32_data_</Item>
|
||||
<Item Name="[int8_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_INT8 && !_has_raw_data()">_impl_.int32_data_</Item>
|
||||
<Item Name="[uint8_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_UINT8 && !_has_raw_data()">_impl_.int32_data_</Item>
|
||||
<Item Name="[int32_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_INT32 && !_has_raw_data()">_impl_.int32_data_</Item>
|
||||
<Item Name="[uint32_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_UINT32 && !_has_raw_data()">_impl_.int64_data_</Item>
|
||||
<Item Name="[int64_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_INT64 && !_has_raw_data()">_impl_.int64_data_</Item>
|
||||
<Item Name="[uint64_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_UINT64 && !_has_raw_data()">_impl_.uint64_data_</Item>
|
||||
<Item Name="[double_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_DOUBLE && !_has_raw_data()">_impl_.double_data_</Item>
|
||||
<Item Name="[string_data]" ExcludeView="simple" Condition="_impl_.data_type_ == TensorProto_DataType_STRING && !_has_raw_data()">_impl_.string_data_</Item>
|
||||
<Item Name="[raw_data]" ExcludeView="simple" Condition="_has_raw_data()">(std::string*)(_impl_.raw_data_.tagged_ptr_)</Item>
|
||||
<Item Name="[data_location]" ExcludeView="simple" Condition="_has_data_location()">(TensorProto_DataLocation) _impl_.data_location_</Item>
|
||||
<Item Name="[external_data]" ExcludeView="simple" Condition="_has_data_location()">_impl_.external_data_</Item>
|
||||
<Item Name="[has_raw_data]" ExcludeView="simple">_has_raw_data()</Item>
|
||||
<Item Name="[has_data_location]" ExcludeView="simple">_has_data_location()</Item>
|
||||
<Item Name="[has_segment]" ExcludeView="simple">_has_segment()</Item>
|
||||
|
|
@ -281,9 +287,9 @@
|
|||
<Intrinsic Name="_has_indices" Expression="(_has_bits_.has_bits_[0] & 0x00000002u) != 0"/>
|
||||
<DisplayString>{{ SparseTensorProto }}</DisplayString>
|
||||
<Expand>
|
||||
<Item Name="[dense_shape]" ExcludeView="simple">dims_</Item>
|
||||
<Item Name="[values]" Condition="_has_values()" ExcludeView="simple">values_</Item>
|
||||
<Item Name="[indices]" Condition="_has_indices()" ExcludeView="simple">indices_</Item>
|
||||
<Item Name="[dense_shape]" ExcludeView="simple">_impl_.dims_</Item>
|
||||
<Item Name="[values]" Condition="_has_values()" ExcludeView="simple">_impl_.values_</Item>
|
||||
<Item Name="[indices]" Condition="_has_indices()" ExcludeView="simple">_impl_.indices_</Item>
|
||||
<Item Name="[has_values]" ExcludeView="simple">_has_values()</Item>
|
||||
<Item Name="[has_indices]" ExcludeView="simple">_has_indices()</Item>
|
||||
</Expand>
|
||||
|
|
|
|||
Loading…
Reference in a new issue