Skip to content

Commit 1c07bde

Browse files
Fea, 添加Span、Version可视化配置
1 parent 9f4f9fb commit 1c07bde

File tree

1 file changed

+64
-0
lines changed

1 file changed

+64
-0
lines changed

src/YY.Base.natvis

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,70 @@
122122
</ArrayItems>
123123
</Expand>
124124
</Type>
125+
126+
<Type Name="YY::Base::Containers::Span&lt;*&gt;" Priority="MediumLow">
127+
<Intrinsic Name="GetSize" Expression="cData" />
128+
<Intrinsic Name="GetData" Expression="pData" />
129+
<DisplayString>{{ Size={GetSize()} }}</DisplayString>
130+
<Expand>
131+
<Item Name="[Size]" ExcludeView="simple">GetSize()</Item>
132+
<Item Name="[Data]" ExcludeView="simple">GetData()</Item>
133+
<ArrayItems>
134+
<Size>GetSize()</Size>
135+
<ValuePointer>GetData()</ValuePointer>
136+
</ArrayItems>
137+
</Expand>
138+
</Type>
139+
140+
<Type Name="YY::Base::Utils::Version" Priority="MediumLow">
141+
<DisplayString>{uMajor,d}.{uMinor,d}.{uBuild,d}.{uRevision,d}</DisplayString>
142+
</Type>
143+
144+
<Type Name="YY::Base::Time::TimeSpan" Priority="MediumLow">
145+
<Intrinsic Name="TicksPerMicrosecond" Expression="kTicksPerMicrosecond" />
146+
<Intrinsic Name="TicksPerMillisecond" Expression="TicksPerMicrosecond() * YY::Base::Time::kMicrosecondsPerMillisecond" />
147+
<Intrinsic Name="TicksPerSecond" Expression="TicksPerMillisecond() * YY::Base::Time::kMillisecondsPerSecond" />
148+
<Intrinsic Name="TicksPerMinute" Expression="TicksPerSecond() * YY::Base::Time::kSecondsPerMinute" />
149+
<Intrinsic Name="TicksPerHour" Expression="TicksPerMinute() * YY::Base::Time::kMinutesPerHour" />
150+
<Intrinsic Name="TicksPerDay" Expression="TicksPerHour() * YY::Base::Time::kHoursPerDay" />
151+
152+
<Intrinsic Name="GetTicks" Expression="iElapsedTicks >= 0 ? iElapsedTicks : (iElapsedTicks * -1ll)" />
153+
<Intrinsic Name="GetNanoseconds" Expression="GetTicks() * 100" />
154+
<Intrinsic Name="GetMicroseconds" Expression="GetTicks() / TicksPerMicrosecond()" />
155+
<Intrinsic Name="GetMilliseconds" Expression="GetTicks() / TicksPerMillisecond()" />
156+
<Intrinsic Name="GetSeconds" Expression="GetTicks() / TicksPerSecond()" />
157+
<Intrinsic Name="GetMinutes" Expression="GetTicks() / TicksPerMinute()" />
158+
<Intrinsic Name="GetHours" Expression="GetTicks() / TicksPerHour()" />
159+
<Intrinsic Name="GetDays" Expression="GetTicks() / TicksPerDay()" />
160+
161+
<DisplayString Condition="GetDays() !=0">{ iElapsedTicks / TicksPerDay(),d}.{ GetHours() % 24,d}:{GetMinutes() % 60,d}:{GetSeconds() % 60,d}.{GetMilliseconds() % 1000,d}</DisplayString>
162+
<DisplayString Condition="GetMilliseconds() !=0">{ iElapsedTicks / TicksPerHour(),d}:{GetMinutes() % 60,d}:{GetSeconds() % 60,d}.{GetMilliseconds() % 1000,d}</DisplayString>
163+
<DisplayString Condition="GetMicroseconds() !=0">{iElapsedTicks/TicksPerMillisecond(),d}us</DisplayString>
164+
<DisplayString>{iElapsedTicks * 100,d}ns</DisplayString>
165+
<Expand>
166+
<Item Name="[Days]" ExcludeView="simple" Condition="GetDays() != 0">iElapsedTicks / TicksPerDay()</Item>
167+
<Item Name="[Hours]" ExcludeView="simple" Condition="GetHours() != 0">iElapsedTicks / TicksPerHour() % 24</Item>
168+
<Item Name="[Minutes]" ExcludeView="simple" Condition="GetMinutes() != 0">iElapsedTicks / TicksPerMinute() % 60</Item>
169+
<Item Name="[Seconds]" ExcludeView="simple" Condition="GetSeconds() != 0">iElapsedTicks / TicksPerSecond() % 60</Item>
170+
<Item Name="[Milliseconds]" ExcludeView="simple" Condition="GetMilliseconds() != 0">iElapsedTicks / TicksPerMillisecond() % 1000</Item>
171+
<Item Name="[Microseconds]" ExcludeView="simple" Condition="GetMicroseconds() != 0">iElapsedTicks / TicksPerMicrosecond() % 1000</Item>
172+
<Item Name="[Nanoseconds]" ExcludeView="simple" Condition="GetNanoseconds() != 0">iElapsedTicks % 10 * 100</Item>
173+
174+
<Item Name="[TotalDays]" ExcludeView="simple" Condition="GetDays() != 0">iElapsedTicks / TicksPerDay()</Item>
175+
176+
<Item Name="[TotalHours]" ExcludeView="simple" Condition="GetHours() != 0">iElapsedTicks / TicksPerHour()</Item>
177+
178+
<Item Name="[TotalMinutes]" ExcludeView="simple" Condition="GetMinutes() != 0">iElapsedTicks / TicksPerMinute()</Item>
179+
180+
<Item Name="[TotalSeconds]" ExcludeView="simple" Condition="GetSeconds() != 0">iElapsedTicks / TicksPerSecond()</Item>
181+
182+
<Item Name="[TotalMilliseconds]" ExcludeView="simple" Condition="GetMilliseconds() != 0">iElapsedTicks / TicksPerMillisecond()</Item>
183+
184+
<Item Name="[TotalMicroseconds]" ExcludeView="simple" Condition="GetMicroseconds() != 0">iElapsedTicks / TicksPerMicrosecond()</Item>
185+
186+
<Item Name="[Ticks]" ExcludeView="simple">iElapsedTicks</Item>
187+
</Expand>
188+
</Type>
125189

126190
<Type Name="YY::Base::Time::UtcDataTime">
127191
<Intrinsic Name="MicrosecondsPerMillisecond" Expression="YY::Base::Time::kMicrosecondsPerMillisecond * kTicksPerMicrosecond" />

0 commit comments

Comments
 (0)