mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 11:38:21 +02:00
104 lines
No EOL
5.2 KiB
XML
104 lines
No EOL
5.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
|
|
<Type Name="Beefy::BfAstNode">
|
|
<DisplayString>{{{(*(Beefy::BfSource**)(((intptr_t)this & 0x7FFFFFFFFFFFF000UL)))->mSrc + mSrcStart,[mSrcEnd - mSrcStart]s8}}}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[CharPtr]">(*(Beefy::BfSource**)(((intptr_t)this & 0x7FFFFFFFFFFFF000UL)))->mSrc + mSrcStart</Item>
|
|
<Item Name="[Source]">(*(Beefy::BfSource**)(((intptr_t)this & 0x7FFFFFFFFFFFF000UL)))</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::DwType">
|
|
<DisplayString>{{{mTypeCode} {mName} mParent:{mParent}}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfMethodDef">
|
|
<DisplayString Condition="mIsStatic">{{static {mName}}</DisplayString>
|
|
<DisplayString Condition="!mIsStatic">{{{mName}}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[Name]">mName</Item>
|
|
<Item Name="[Declaration]">mMethodDeclaration</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfMethodInstance">
|
|
<DisplayString>{{{mMethodDef->mName} in {mMethodInstanceGroup->mOwner}}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[MethodDef]">mMethodDef</Item>
|
|
<Item Name="[Type]">mMethodInstanceGroup->mOwner</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfFieldInstance">
|
|
<DisplayString>{{{mOwner->mTypeDef->mFields._Myfirst[mFieldIdx]->mName} in {mOwner}}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[FieldDef]">mOwner->mTypeDef->mFields._Myfirst[mFieldIdx]</Item>
|
|
<Item Name="[Type]">mOwner</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfTypeDef">
|
|
<DisplayString Condition="mOuterType == 0">{{{mNamespace, na}.{mName, na}}}</DisplayString>
|
|
<DisplayString Condition="mOuterType != 0">{{{mOuterType, na}.{mName, na}}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfTypeInstance">
|
|
<DisplayString>{{{mTypeDef}}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfGenericTypeInstance">
|
|
<DisplayString Condition="mTypeGenericArguments.mSize == 1">{{{mTypeDef}<{mTypeGenericArguments.mVals[0]}>}}</DisplayString>
|
|
<DisplayString Condition="mTypeGenericArguments.mSize == 2">{{{mTypeDef}<{mTypeGenericArguments.mVals[0]}, {mTypeGenericArguments.mVals[1], na}>}}</DisplayString>
|
|
<DisplayString Condition="mTypeGenericArguments.mSize == 3">{{{mTypeDef}<{mTypeGenericArguments.mVals[0]}, {mTypeGenericArguments.mVals[1], na}, {mTypeGenericArguments.mVals[2], na }>}}</DisplayString>
|
|
<DisplayString Condition="mTypeGenericArguments.mSize == 4">{{{mTypeDef}<{mTypeGenericArguments.mVals[0]}, {mTypeGenericArguments.mVals[1], na}, {mTypeGenericArguments.mVals[2], na }, {mTypeGenericArguments.mVals[3], na}>}}</DisplayString>
|
|
<DisplayString Condition="mTypeGenericArguments.mSize >= 5">{{{mTypeDef}<{mTypeGenericArguments.mVals[0]}, {mTypeGenericArguments.mVals[1], na}, {mTypeGenericArguments.mVals[2], na }, {mTypeGenericArguments.mVals[3], na}, ...>}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfPointerType">
|
|
<DisplayString>{{ptr {mElementType}}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfBoxedType">
|
|
<DisplayString>{{boxed {mElementType}*}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfPrimitiveType">
|
|
<DisplayString>{{{mTypeDef->mName}}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfAtom">
|
|
<DisplayString>{*mString, na}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfAtomComposite">
|
|
<DisplayString Condition="mParts.mSize == 0">{{empty}}</DisplayString>
|
|
<DisplayString Condition="mParts.mSize == 1">{{{mParts[0], na}}}</DisplayString>
|
|
<DisplayString Condition="mParts.mSize == 2">{{{mParts[0], na}.{mParts[1], na}}}</DisplayString>
|
|
<DisplayString Condition="mParts.mSize == 3">{{{mParts[0], na}.{mParts[1], na}.{mParts[2], na }}}</DisplayString>
|
|
<DisplayString Condition="mParts.mSize == 4">{{{mParts[0], na}.{mParts[1], na}.{mParts[2], na }.{mParts[3], na}}}</DisplayString>
|
|
<DisplayString Condition="mParts.mSize == 5">{{{mParts[0], na}.{mParts[1], na}.{mParts[2], na }.{mParts[3], na}.{mParts[4], na}}}</DisplayString>
|
|
<DisplayString Condition="mParts.mSize > 5">{{{mParts[0], na}.{mParts[1], na}.{mParts[2], na }.{mParts[3], na}.{mParts[4], na}...}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfGenericParamType">
|
|
<DisplayString Condition="mGenericParamKind == 0">{{@T{mGenericParamIdx}}}</DisplayString>
|
|
<DisplayString Condition="mGenericParamKind == 1">{{@M{mGenericParamIdx}}}</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfContext">
|
|
<DisplayString Condition="this == mCompiler->mContexts[0]">Context0</DisplayString>
|
|
<DisplayString Condition="this == mCompiler->mContexts[1]">Context1</DisplayString>
|
|
</Type>
|
|
|
|
<Type Name="Beefy::BfModule">
|
|
<Expand>
|
|
<Item Name="[ModuleName]">mModuleName</Item>
|
|
<Item Name="[CurMethodInstance]">mCurMethodInstance</Item>
|
|
<Item Name="[File]">mCurFilePosition.mFileInstance->mParser->mFileName</Item>
|
|
<Item Name="[LineNum]">mCurFilePosition.mCurLine + 1</Item>
|
|
<Item Name="[ExprText]">mCurFilePosition.mFileInstance->mParser->mSrc + mCurFilePosition.mCurSrcPos</Item>
|
|
<Item Name="[Context]">mContext</Item>
|
|
</Expand>
|
|
</Type>
|
|
|
|
</AutoVisualizer> |