11 Commits
Author SHA1 Message Date
ds5678 d427af7252 Bump version to 1.2.0 2026-08-26 23:01:44 -07:00
ds5678 7c868ca4bf Fix compile errors 2026-08-26 23:01:12 -07:00
ds5678 77a11b7c65 Add PDBOpenEx2W overload to MsPdbCore class
Added PDBOpenEx2W method for opening PDB files with extra parameters. Handled string marshaling, stackalloc for error messages, and native function call. Updated using directives for required namespaces.
2026-08-26 22:56:47 -07:00
ds5678 b73f87ebbb Remove redundent enum now that the other headers are included 2026-08-26 22:55:40 -07:00
ds5678 982ca11c98 Add code view types 2026-08-26 22:23:25 -07:00
ds5678 539a85180a Remove all usages of [GeneratedCode] attribute
Removed System.CodeDom.Compiler using directives and all [GeneratedCode] attribute applications from types, structs, enums, and nested types. This simplifies the codebase and may reduce metadata size, as types are no longer marked as generated by ClangSharp.
2026-08-26 20:32:52 -07:00
ds5678 951ae3f5a9 Update project versioning to use VersionPrefix 1.1.0
Replaced <Version> and <AssemblyVersion> with <VersionPrefix> set to 1.1.0 in the project file, standardizing version specification and bumping the version.
2026-08-26 19:06:14 -07:00
ds5678 2da6a26e6c Load required files from the default install directory 2026-08-26 16:22:02 -07:00
ds5678 669b610293 Latest clangsharp 2026-08-26 15:58:50 -07:00
ds5678 95bd100464 Update to .NET 10.0, copyright, and doc settings
Updated target framework from .NET 9.0 to .NET 10.0. Changed copyright year to "2024 - 2026". Removed XML documentation generation properties from project file.
2026-08-26 15:04:45 -07:00
ds5678 99f4083140 Switch to XML-based .slnx solution format
Replaced the traditional .sln file with a new .slnx file using an XML-based format. The new solution organizes structure with "include" and "Solution Items" folders and references the main project file.
2026-08-26 15:03:02 -07:00
351 changed files with 26586 additions and 173 deletions

No files matched your search

-42
View File
@@ -1,42 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.13.35507.96 d17.13
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AssetRipper.Bindings.MsPdbCore", "AssetRipper.Bindings.MsPdbCore\AssetRipper.Bindings.MsPdbCore.csproj", "{EBB175D6-106F-4A44-91CB-70E08858E2AF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "include", "include", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
ProjectSection(SolutionItems) = preProject
include\pdb.h = include\pdb.h
include\README.md = include\README.md
include\vcver.h = include\vcver.h
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8EC462FD-D22E-90A8-E5CE-7E832BA40C5D}"
ProjectSection(SolutionItems) = preProject
.editorconfig = .editorconfig
.gitignore = .gitignore
generate.bat = generate.bat
generate.rsp = generate.rsp
LICENSE.txt = LICENSE.txt
README.md = README.md
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EBB175D6-106F-4A44-91CB-70E08858E2AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EBB175D6-106F-4A44-91CB-70E08858E2AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EBB175D6-106F-4A44-91CB-70E08858E2AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EBB175D6-106F-4A44-91CB-70E08858E2AF}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BDA49DF3-F340-417D-91A1-C64B37ADFB3A}
EndGlobalSection
EndGlobal
+19
View File
@@ -0,0 +1,19 @@
<Solution>
<Folder Name="/include/">
<File Path="include/cvconst.h" />
<File Path="include/cvinfo.h" />
<File Path="include/pdb.h" />
<File Path="include/README.md" />
<File Path="include/vcver.h" />
</Folder>
<Folder Name="/Solution Items/">
<File Path=".editorconfig" />
<File Path=".gitignore" />
<File Path="generate.bat" />
<File Path="generate_cv.rsp" />
<File Path="generate_pdb.rsp" />
<File Path="LICENSE.txt" />
<File Path="README.md" />
</Folder>
<Project Path="AssetRipper.Bindings.MsPdbCore/AssetRipper.Bindings.MsPdbCore.csproj" />
</Solution>
@@ -1,14 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net9.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
<Nullable>enable</Nullable>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<IsAotCompatible>true</IsAotCompatible>
<CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
<Version>1.0.1</Version>
<AssemblyVersion>$(Version)</AssemblyVersion>
<VersionPrefix>1.2.0</VersionPrefix>
<Copyright>Copyright © ds5678</Copyright>
<Authors>ds5678</Authors>
<Company>AssetRipper</Company>
@@ -19,13 +18,11 @@
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<RepositoryType>git</RepositoryType>
<PackageProjectUrl>$(RepositoryUrl)</PackageProjectUrl>
<Copyright>Copyright (c) 2024 ds5678</Copyright>
<Copyright>Copyright (c) 2024 - 2026 ds5678</Copyright>
<Description>Managed wrapper library for mspdbcore.dll</Description>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<DocumentationFile>bin\AssetRipper.Bindings.MsPdbCore.xml</DocumentationFile>
<NoWarn>SYSLIB1054;1591</NoWarn>
</PropertyGroup>
@@ -1,16 +0,0 @@
using System;
namespace AssetRipper.Bindings.MsPdbCore;
/// <summary>
/// <see href="https://github.com/microsoft/microsoft-pdb/blob/805655a28bd8198004be2ac27e6e0290121a5e89/include/cvinfo.h#L3676"/>
/// </summary>
[Flags]
public enum CV_PUBSYMFLAGS_e : uint
{
None = 0,
Code = 0x00000001,
Function = 0x00000002,
Managed = 0x00000004,
MSIL = 0x00000008,
}
@@ -0,0 +1,13 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ALIGNSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
}
@@ -0,0 +1,48 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ANNOTATIONSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("unsigned short")]
public ushort csz;
[NativeTypeName("unsigned char[1]")]
public _rgsz_e__FixedBuffer rgsz;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _rgsz_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,37 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ARMSWITCHTABLE
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_uoff32_t")]
public uint offsetBase;
[NativeTypeName("unsigned short")]
public ushort sectBase;
[NativeTypeName("unsigned short")]
public ushort switchType;
[NativeTypeName("CV_uoff32_t")]
public uint offsetBranch;
[NativeTypeName("CV_uoff32_t")]
public uint offsetTable;
[NativeTypeName("unsigned short")]
public ushort sectBranch;
[NativeTypeName("unsigned short")]
public ushort sectTable;
[NativeTypeName("unsigned long")]
public uint cEntries;
}
@@ -0,0 +1,70 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ATTRMANYREGSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_typ_t")]
public uint typind;
public CV_lvar_attr attr;
[NativeTypeName("unsigned char")]
public byte count;
[NativeTypeName("unsigned char[1]")]
public _reg_e__FixedBuffer reg;
[NativeTypeName("unsigned char[]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _reg_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,70 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ATTRMANYREGSYM2
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_typ_t")]
public uint typind;
public CV_lvar_attr attr;
[NativeTypeName("unsigned short")]
public ushort count;
[NativeTypeName("unsigned short[1]")]
public _reg_e__FixedBuffer reg;
[NativeTypeName("unsigned char[]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _reg_e__FixedBuffer
{
public ushort e0;
[UnscopedRef]
public ref ushort this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<ushort> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,50 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ATTRREGREL
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("CV_typ_t")]
public uint typind;
[NativeTypeName("unsigned short")]
public ushort reg;
public CV_lvar_attr attr;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,47 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ATTRREGSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_typ_t")]
public uint typind;
public CV_lvar_attr attr;
[NativeTypeName("unsigned short")]
public ushort reg;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,47 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct ATTRSLOTSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("unsigned long")]
public uint iSlot;
[NativeTypeName("CV_typ_t")]
public uint typind;
public CV_lvar_attr attr;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,19 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BLOCKSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("unsigned long")]
public uint pParent;
[NativeTypeName("unsigned long")]
public uint pEnd;
}
@@ -0,0 +1,54 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BLOCKSYM16
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("unsigned long")]
public uint pParent;
[NativeTypeName("unsigned long")]
public uint pEnd;
[NativeTypeName("unsigned short")]
public ushort len;
[NativeTypeName("CV_uoff16_t")]
public ushort off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,54 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BLOCKSYM32
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("unsigned long")]
public uint pParent;
[NativeTypeName("unsigned long")]
public uint pEnd;
[NativeTypeName("unsigned long")]
public uint len;
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,45 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BPRELSYM16
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_off16_t")]
public short off;
[NativeTypeName("CV_typ16_t")]
public ushort typind;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,45 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BPRELSYM32
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_off32_t")]
public int off;
[NativeTypeName("CV_typ_t")]
public uint typind;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,45 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BPRELSYM32_16t
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_off32_t")]
public int off;
[NativeTypeName("CV_typ16_t")]
public ushort typind;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,16 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct BUILDINFOSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_ItemId")]
public uint id;
}
@@ -0,0 +1,25 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum BasicType
{
btNoType = 0,
btVoid = 1,
btChar = 2,
btWChar = 3,
btInt = 6,
btUInt = 7,
btFloat = 8,
btBCD = 9,
btBool = 10,
btLong = 13,
btULong = 14,
btCurrency = 25,
btDate = 26,
btVariant = 27,
btComplex = 28,
btBit = 29,
btBSTR = 30,
btHresult = 31,
btChar16 = 32,
btChar32 = 33,
}
@@ -0,0 +1,19 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum BinaryAnnotationOpcode
{
BA_OP_Invalid,
BA_OP_CodeOffset,
BA_OP_ChangeCodeOffsetBase,
BA_OP_ChangeCodeOffset,
BA_OP_ChangeCodeLength,
BA_OP_ChangeFile,
BA_OP_ChangeLineOffset,
BA_OP_ChangeLineEndDelta,
BA_OP_ChangeRangeKind,
BA_OP_ChangeColumnStart,
BA_OP_ChangeColumnEndDelta,
BA_OP_ChangeCodeOffsetAndLineOffset,
BA_OP_ChangeCodeLengthAndCodeOffset,
BA_OP_ChangeColumnEnd,
}
@@ -0,0 +1,25 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CALLSITEINFO
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_off32_t")]
public int off;
[NativeTypeName("unsigned short")]
public ushort sect;
[NativeTypeName("unsigned short")]
public ushort __reserved_0;
[NativeTypeName("CV_typ_t")]
public uint typind;
}
@@ -0,0 +1,79 @@
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CEXMSYM16
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_uoff16_t")]
public ushort off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("unsigned short")]
public ushort model;
[NativeTypeName("__AnonymousRecord_cvinfo_L3532_C5")]
public _Anonymous_e__Union Anonymous;
[UnscopedRef]
public ref _Anonymous_e__Union._pcode_e__Struct pcode
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.pcode;
}
}
[UnscopedRef]
public ref _Anonymous_e__Union._cobol_e__Struct cobol
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.cobol;
}
}
[StructLayout(LayoutKind.Explicit)]
public partial struct _Anonymous_e__Union
{
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3533_C9")]
public _pcode_e__Struct pcode;
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3537_C9")]
public _cobol_e__Struct cobol;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _pcode_e__Struct
{
[NativeTypeName("CV_uoff16_t")]
public ushort pcdtable;
[NativeTypeName("CV_uoff16_t")]
public ushort pcdspi;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _cobol_e__Struct
{
[NativeTypeName("unsigned short")]
public ushort subtype;
[NativeTypeName("unsigned short")]
public ushort flag;
}
}
}
@@ -0,0 +1,103 @@
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CEXMSYM32
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("unsigned short")]
public ushort model;
[NativeTypeName("__AnonymousRecord_cvinfo_L3847_C5")]
public _Anonymous_e__Union Anonymous;
[UnscopedRef]
public ref _Anonymous_e__Union._pcode_e__Struct pcode
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.pcode;
}
}
[UnscopedRef]
public ref _Anonymous_e__Union._cobol_e__Struct cobol
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.cobol;
}
}
[UnscopedRef]
public ref _Anonymous_e__Union._pcode32Mac_e__Struct pcode32Mac
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.pcode32Mac;
}
}
[StructLayout(LayoutKind.Explicit)]
public partial struct _Anonymous_e__Union
{
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3848_C9")]
public _pcode_e__Struct pcode;
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3852_C9")]
public _cobol_e__Struct cobol;
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3856_C9")]
public _pcode32Mac_e__Struct pcode32Mac;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _pcode_e__Struct
{
[NativeTypeName("CV_uoff32_t")]
public uint pcdtable;
[NativeTypeName("CV_uoff32_t")]
public uint pcdspi;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _cobol_e__Struct
{
[NativeTypeName("unsigned short")]
public ushort subtype;
[NativeTypeName("unsigned short")]
public ushort flag;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _pcode32Mac_e__Struct
{
[NativeTypeName("CV_uoff32_t")]
public uint calltableOff;
[NativeTypeName("unsigned short")]
public ushort calltableSeg;
}
}
}
@@ -0,0 +1,18 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CEXM_MODEL_e
{
CEXM_MDL_table = 0x00,
CEXM_MDL_jumptable = 0x01,
CEXM_MDL_datapad = 0x02,
CEXM_MDL_native = 0x20,
CEXM_MDL_cobol = 0x21,
CEXM_MDL_codepad = 0x22,
CEXM_MDL_code = 0x23,
CEXM_MDL_sql = 0x30,
CEXM_MDL_pcode = 0x40,
CEXM_MDL_pcode32Mac = 0x41,
CEXM_MDL_pcode32MacNep = 0x42,
CEXM_MDL_javaInt = 0x50,
CEXM_MDL_unknown = 0xff,
}
@@ -0,0 +1,190 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CFLAGSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("unsigned char")]
public byte machine;
[NativeTypeName("__AnonymousRecord_cvinfo_L3299_C5")]
public _flags_e__Struct flags;
[NativeTypeName("unsigned char[1]")]
public _ver_e__FixedBuffer ver;
public partial struct _flags_e__Struct
{
[NativeBitfield("language", offset: 0, length: 8)]
public byte _bitfield1;
[NativeTypeName("unsigned char : 8")]
public byte language
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield1 & 0xFFu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield1 = (byte)((_bitfield1 & ~0xFFu) | (value & 0xFFu));
}
}
[NativeBitfield("pcode", offset: 0, length: 1)]
[NativeBitfield("floatprec", offset: 1, length: 2)]
[NativeBitfield("floatpkg", offset: 3, length: 2)]
[NativeBitfield("ambdata", offset: 5, length: 3)]
public byte _bitfield2;
[NativeTypeName("unsigned char : 1")]
public byte pcode
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield2 & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield2 = (byte)((_bitfield2 & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned char : 2")]
public byte floatprec
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield2 >> 1) & 0x3u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield2 = (byte)((_bitfield2 & ~(0x3u << 1)) | ((value & 0x3u) << 1));
}
}
[NativeTypeName("unsigned char : 2")]
public byte floatpkg
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield2 >> 3) & 0x3u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield2 = (byte)((_bitfield2 & ~(0x3u << 3)) | ((value & 0x3u) << 3));
}
}
[NativeTypeName("unsigned char : 3")]
public byte ambdata
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield2 >> 5) & 0x7u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield2 = (byte)((_bitfield2 & ~(0x7u << 5)) | ((value & 0x7u) << 5));
}
}
[NativeBitfield("ambcode", offset: 0, length: 3)]
[NativeBitfield("mode32", offset: 3, length: 1)]
[NativeBitfield("pad", offset: 4, length: 4)]
public byte _bitfield3;
[NativeTypeName("unsigned char : 3")]
public byte ambcode
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield3 & 0x7u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield3 = (byte)((_bitfield3 & ~0x7u) | (value & 0x7u));
}
}
[NativeTypeName("unsigned char : 1")]
public byte mode32
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield3 >> 3) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield3 = (byte)((_bitfield3 & ~(0x1u << 3)) | ((value & 0x1u) << 3));
}
}
[NativeTypeName("unsigned char : 4")]
public byte pad
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield3 >> 4) & 0xFu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield3 = (byte)((_bitfield3 & ~(0xFu << 4)) | ((value & 0xFu) << 4));
}
}
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _ver_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,51 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct COFFGROUPSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("unsigned long")]
public uint cb;
[NativeTypeName("unsigned long")]
public uint characteristics;
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("unsigned char[1]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,256 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct COMPILESYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("__AnonymousRecord_cvinfo_L3316_C5")]
public _flags_e__Struct flags;
[NativeTypeName("unsigned short")]
public ushort machine;
[NativeTypeName("unsigned short")]
public ushort verFEMajor;
[NativeTypeName("unsigned short")]
public ushort verFEMinor;
[NativeTypeName("unsigned short")]
public ushort verFEBuild;
[NativeTypeName("unsigned short")]
public ushort verMajor;
[NativeTypeName("unsigned short")]
public ushort verMinor;
[NativeTypeName("unsigned short")]
public ushort verBuild;
[NativeTypeName("unsigned char[1]")]
public _verSt_e__FixedBuffer verSt;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _flags_e__Struct
{
[NativeBitfield("iLanguage", offset: 0, length: 8)]
[NativeBitfield("fEC", offset: 8, length: 1)]
[NativeBitfield("fNoDbgInfo", offset: 9, length: 1)]
[NativeBitfield("fLTCG", offset: 10, length: 1)]
[NativeBitfield("fNoDataAlign", offset: 11, length: 1)]
[NativeBitfield("fManagedPresent", offset: 12, length: 1)]
[NativeBitfield("fSecurityChecks", offset: 13, length: 1)]
[NativeBitfield("fHotPatch", offset: 14, length: 1)]
[NativeBitfield("fCVTCIL", offset: 15, length: 1)]
[NativeBitfield("fMSILModule", offset: 16, length: 1)]
[NativeBitfield("pad", offset: 17, length: 15)]
public uint _bitfield;
[NativeTypeName("unsigned long : 8")]
public uint iLanguage
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return _bitfield & 0xFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~0xFFu) | (value & 0xFFu);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fEC
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 8) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 8)) | ((value & 0x1u) << 8);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fNoDbgInfo
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 9) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 9)) | ((value & 0x1u) << 9);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fLTCG
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 10) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 10)) | ((value & 0x1u) << 10);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fNoDataAlign
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 11) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 11)) | ((value & 0x1u) << 11);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fManagedPresent
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 12) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 12)) | ((value & 0x1u) << 12);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fSecurityChecks
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 13) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 13)) | ((value & 0x1u) << 13);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fHotPatch
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 14) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 14)) | ((value & 0x1u) << 14);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fCVTCIL
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 15) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 15)) | ((value & 0x1u) << 15);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fMSILModule
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 16) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 16)) | ((value & 0x1u) << 16);
}
}
[NativeTypeName("unsigned long : 15")]
public uint pad
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 17) & 0x7FFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x7FFFu << 17)) | ((value & 0x7FFFu) << 17);
}
}
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _verSt_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,313 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct COMPILESYM3
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("__AnonymousRecord_cvinfo_L3344_C5")]
public _flags_e__Struct flags;
[NativeTypeName("unsigned short")]
public ushort machine;
[NativeTypeName("unsigned short")]
public ushort verFEMajor;
[NativeTypeName("unsigned short")]
public ushort verFEMinor;
[NativeTypeName("unsigned short")]
public ushort verFEBuild;
[NativeTypeName("unsigned short")]
public ushort verFEQFE;
[NativeTypeName("unsigned short")]
public ushort verMajor;
[NativeTypeName("unsigned short")]
public ushort verMinor;
[NativeTypeName("unsigned short")]
public ushort verBuild;
[NativeTypeName("unsigned short")]
public ushort verQFE;
[NativeTypeName("char[1]")]
public _verSz_e__FixedBuffer verSz;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _flags_e__Struct
{
[NativeBitfield("iLanguage", offset: 0, length: 8)]
[NativeBitfield("fEC", offset: 8, length: 1)]
[NativeBitfield("fNoDbgInfo", offset: 9, length: 1)]
[NativeBitfield("fLTCG", offset: 10, length: 1)]
[NativeBitfield("fNoDataAlign", offset: 11, length: 1)]
[NativeBitfield("fManagedPresent", offset: 12, length: 1)]
[NativeBitfield("fSecurityChecks", offset: 13, length: 1)]
[NativeBitfield("fHotPatch", offset: 14, length: 1)]
[NativeBitfield("fCVTCIL", offset: 15, length: 1)]
[NativeBitfield("fMSILModule", offset: 16, length: 1)]
[NativeBitfield("fSdl", offset: 17, length: 1)]
[NativeBitfield("fPGO", offset: 18, length: 1)]
[NativeBitfield("fExp", offset: 19, length: 1)]
[NativeBitfield("pad", offset: 20, length: 12)]
public uint _bitfield;
[NativeTypeName("unsigned long : 8")]
public uint iLanguage
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return _bitfield & 0xFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~0xFFu) | (value & 0xFFu);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fEC
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 8) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 8)) | ((value & 0x1u) << 8);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fNoDbgInfo
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 9) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 9)) | ((value & 0x1u) << 9);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fLTCG
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 10) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 10)) | ((value & 0x1u) << 10);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fNoDataAlign
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 11) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 11)) | ((value & 0x1u) << 11);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fManagedPresent
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 12) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 12)) | ((value & 0x1u) << 12);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fSecurityChecks
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 13) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 13)) | ((value & 0x1u) << 13);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fHotPatch
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 14) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 14)) | ((value & 0x1u) << 14);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fCVTCIL
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 15) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 15)) | ((value & 0x1u) << 15);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fMSILModule
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 16) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 16)) | ((value & 0x1u) << 16);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fSdl
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 17) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 17)) | ((value & 0x1u) << 17);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fPGO
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 18) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 18)) | ((value & 0x1u) << 18);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fExp
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 19) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 19)) | ((value & 0x1u) << 19);
}
}
[NativeTypeName("unsigned long : 12")]
public uint pad
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 20) & 0xFFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0xFFFu << 20)) | ((value & 0xFFFu) << 20);
}
}
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _verSz_e__FixedBuffer
{
public sbyte e0;
[UnscopedRef]
public ref sbyte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<sbyte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,45 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CONSTSYM
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_typ_t")]
public uint typind;
[NativeTypeName("unsigned short")]
public ushort value;
[NativeTypeName("unsigned char[]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,45 @@
using System;
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CONSTSYM_16t
{
[NativeTypeName("unsigned short")]
public ushort reclen;
[NativeTypeName("unsigned short")]
public ushort rectyp;
[NativeTypeName("CV_typ16_t")]
public ushort typind;
[NativeTypeName("unsigned short")]
public ushort value;
[NativeTypeName("unsigned char[]")]
public _name_e__FixedBuffer name;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _name_e__FixedBuffer
{
public byte e0;
[UnscopedRef]
public ref byte this[int index]
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Unsafe.Add(ref e0, index);
}
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[UnscopedRef]
public Span<byte> AsSpan(int length) => MemoryMarshal.CreateSpan(ref e0, length);
}
}
@@ -0,0 +1,11 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_BuildInfo_e
{
CV_BuildInfo_CurrentDirectory = 0,
CV_BuildInfo_BuildTool = 1,
CV_BuildInfo_SourceFile = 2,
CV_BuildInfo_ProgramDatabaseFile = 3,
CV_BuildInfo_CommandArguments = 4,
CV_BUILDINFO_KNOWN,
}
@@ -0,0 +1,8 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_CFL_CODE_e
{
CV_CFL_CNEAR = 0x00,
CV_CFL_CFAR = 0x01,
CV_CFL_CHUGE = 0x02,
}
@@ -0,0 +1,8 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_CFL_DATA
{
CV_CFL_DNEAR = 0x00,
CV_CFL_DFAR = 0x01,
CV_CFL_DHUGE = 0x02,
}
@@ -0,0 +1,8 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_CFL_FPKG_e
{
CV_CFL_NDP = 0x00,
CV_CFL_EMU = 0x01,
CV_CFL_ALT = 0x02,
}
@@ -0,0 +1,22 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_CFL_LANG
{
CV_CFL_C = 0x00,
CV_CFL_CXX = 0x01,
CV_CFL_FORTRAN = 0x02,
CV_CFL_MASM = 0x03,
CV_CFL_PASCAL = 0x04,
CV_CFL_BASIC = 0x05,
CV_CFL_COBOL = 0x06,
CV_CFL_LINK = 0x07,
CV_CFL_CVTRES = 0x08,
CV_CFL_CVTPGD = 0x09,
CV_CFL_CSHARP = 0x0A,
CV_CFL_VB = 0x0B,
CV_CFL_ILASM = 0x0C,
CV_CFL_JAVA = 0x0D,
CV_CFL_JSCRIPT = 0x0E,
CV_CFL_MSIL = 0x0F,
CV_CFL_HLSL = 0x10,
}
@@ -0,0 +1,9 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_COBOL_e
{
CV_COBOL_dontstop,
CV_COBOL_pfm,
CV_COBOL_false,
CV_COBOL_extcall,
}
@@ -0,0 +1,70 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_CPU_TYPE_e
{
CV_CFL_8080 = 0x00,
CV_CFL_8086 = 0x01,
CV_CFL_80286 = 0x02,
CV_CFL_80386 = 0x03,
CV_CFL_80486 = 0x04,
CV_CFL_PENTIUM = 0x05,
CV_CFL_PENTIUMII = 0x06,
CV_CFL_PENTIUMPRO = CV_CFL_PENTIUMII,
CV_CFL_PENTIUMIII = 0x07,
CV_CFL_MIPS = 0x10,
CV_CFL_MIPSR4000 = CV_CFL_MIPS,
CV_CFL_MIPS16 = 0x11,
CV_CFL_MIPS32 = 0x12,
CV_CFL_MIPS64 = 0x13,
CV_CFL_MIPSI = 0x14,
CV_CFL_MIPSII = 0x15,
CV_CFL_MIPSIII = 0x16,
CV_CFL_MIPSIV = 0x17,
CV_CFL_MIPSV = 0x18,
CV_CFL_M68000 = 0x20,
CV_CFL_M68010 = 0x21,
CV_CFL_M68020 = 0x22,
CV_CFL_M68030 = 0x23,
CV_CFL_M68040 = 0x24,
CV_CFL_ALPHA = 0x30,
CV_CFL_ALPHA_21064 = 0x30,
CV_CFL_ALPHA_21164 = 0x31,
CV_CFL_ALPHA_21164A = 0x32,
CV_CFL_ALPHA_21264 = 0x33,
CV_CFL_ALPHA_21364 = 0x34,
CV_CFL_PPC601 = 0x40,
CV_CFL_PPC603 = 0x41,
CV_CFL_PPC604 = 0x42,
CV_CFL_PPC620 = 0x43,
CV_CFL_PPCFP = 0x44,
CV_CFL_PPCBE = 0x45,
CV_CFL_SH3 = 0x50,
CV_CFL_SH3E = 0x51,
CV_CFL_SH3DSP = 0x52,
CV_CFL_SH4 = 0x53,
CV_CFL_SHMEDIA = 0x54,
CV_CFL_ARM3 = 0x60,
CV_CFL_ARM4 = 0x61,
CV_CFL_ARM4T = 0x62,
CV_CFL_ARM5 = 0x63,
CV_CFL_ARM5T = 0x64,
CV_CFL_ARM6 = 0x65,
CV_CFL_ARM_XMAC = 0x66,
CV_CFL_ARM_WMMX = 0x67,
CV_CFL_ARM7 = 0x68,
CV_CFL_OMNI = 0x70,
CV_CFL_IA64 = 0x80,
CV_CFL_IA64_1 = 0x80,
CV_CFL_IA64_2 = 0x81,
CV_CFL_CEE = 0x90,
CV_CFL_AM33 = 0xA0,
CV_CFL_M32R = 0xB0,
CV_CFL_TRICORE = 0xC0,
CV_CFL_X64 = 0xD0,
CV_CFL_AMD64 = CV_CFL_X64,
CV_CFL_EBC = 0xE0,
CV_CFL_THUMB = 0xF0,
CV_CFL_ARMNT = 0xF4,
CV_CFL_ARM64 = 0xF6,
CV_CFL_D3D11_SHADER = 0x100,
}
@@ -0,0 +1,13 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_Column_t
{
[NativeTypeName("CV_columnpos_t")]
public ushort offColumnStart;
[NativeTypeName("CV_columnpos_t")]
public ushort offColumnEnd;
}
@@ -0,0 +1,8 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_DISCARDED_e
{
CV_DISCARDED_UNKNOWN,
CV_DISCARDED_NOT_SELECTED,
CV_DISCARDED_NOT_REFERENCED,
}
@@ -0,0 +1,16 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_DebugSLinesFileBlockHeader_t
{
[NativeTypeName("CV_off32_t")]
public int offFile;
[NativeTypeName("CV_off32_t")]
public int nLines;
[NativeTypeName("CV_off32_t")]
public int cbBlock;
}
@@ -0,0 +1,19 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_DebugSLinesHeader_t
{
[NativeTypeName("CV_off32_t")]
public int offCon;
[NativeTypeName("unsigned short")]
public ushort segCon;
[NativeTypeName("unsigned short")]
public ushort flags;
[NativeTypeName("CV_off32_t")]
public int cbCon;
}
@@ -0,0 +1,13 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_DebugSSubsectionHeader_t
{
[NativeTypeName("enum DEBUG_S_SUBSECTION_TYPE")]
public DEBUG_S_SUBSECTION_TYPE type;
[NativeTypeName("CV_off32_t")]
public int cbLen;
}
@@ -0,0 +1,72 @@
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public partial struct CV_EXPROCFLAGS
{
public CV_PROCFLAGS cvpf;
[NativeTypeName("__AnonymousRecord_cvinfo_L3059_C5")]
public _Anonymous_e__Union Anonymous;
[UnscopedRef]
public ref byte grfAll
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.grfAll;
}
}
public byte __reserved_byte
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.__reserved_byte;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.__reserved_byte = value;
}
}
[StructLayout(LayoutKind.Explicit)]
public partial struct _Anonymous_e__Union
{
[FieldOffset(0)]
[NativeTypeName("unsigned char")]
public byte grfAll;
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3061_C9")]
public _Anonymous_e__Struct Anonymous;
public partial struct _Anonymous_e__Struct
{
[NativeBitfield("__reserved_byte", offset: 0, length: 8)]
public byte _bitfield;
[NativeTypeName("unsigned char : 8")]
public byte __reserved_byte
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield & 0xFFu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~0xFFu) | (value & 0xFFu));
}
}
}
}
}
@@ -0,0 +1,61 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_GENERIC_FLAG
{
[NativeBitfield("cstyle", offset: 0, length: 1)]
[NativeBitfield("rsclean", offset: 1, length: 1)]
[NativeBitfield("unused", offset: 2, length: 14)]
public ushort _bitfield;
[NativeTypeName("unsigned short : 1")]
public ushort cstyle
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort rsclean
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 1) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1));
}
}
[NativeTypeName("unsigned short : 14")]
public ushort unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 2) & 0x3FFFu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x3FFFu << 2)) | ((value & 0x3FFFu) << 2));
}
}
}
@@ -0,0 +1,12 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_GENERIC_STYLE_e
{
CV_GENERIC_VOID = 0x00,
CV_GENERIC_REG = 0x01,
CV_GENERIC_ICAN = 0x02,
CV_GENERIC_ICAF = 0x03,
CV_GENERIC_IRAN = 0x04,
CV_GENERIC_IRAF = 0x05,
CV_GENERIC_UNUSED = 0x06,
}
@@ -0,0 +1,9 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_HFA_e
{
CV_HFA_none = 0,
CV_HFA_float = 1,
CV_HFA_double = 2,
CV_HFA_other = 3,
}
@@ -0,0 +1,10 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_HLSLMemorySpace_e
{
CV_HLSL_MEMSPACE_DATA = 0x00,
CV_HLSL_MEMSPACE_SAMPLER = 0x01,
CV_HLSL_MEMSPACE_RESOURCE = 0x02,
CV_HLSL_MEMSPACE_RWRESOURCE = 0x03,
CV_HLSL_MEMSPACE_MAX = 0x0F,
}
@@ -0,0 +1,46 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_HLSLREG_e
{
CV_HLSLREG_TEMP = 0,
CV_HLSLREG_INPUT = 1,
CV_HLSLREG_OUTPUT = 2,
CV_HLSLREG_INDEXABLE_TEMP = 3,
CV_HLSLREG_IMMEDIATE32 = 4,
CV_HLSLREG_IMMEDIATE64 = 5,
CV_HLSLREG_SAMPLER = 6,
CV_HLSLREG_RESOURCE = 7,
CV_HLSLREG_CONSTANT_BUFFER = 8,
CV_HLSLREG_IMMEDIATE_CONSTANT_BUFFER = 9,
CV_HLSLREG_LABEL = 10,
CV_HLSLREG_INPUT_PRIMITIVEID = 11,
CV_HLSLREG_OUTPUT_DEPTH = 12,
CV_HLSLREG_NULL = 13,
CV_HLSLREG_RASTERIZER = 14,
CV_HLSLREG_OUTPUT_COVERAGE_MASK = 15,
CV_HLSLREG_STREAM = 16,
CV_HLSLREG_FUNCTION_BODY = 17,
CV_HLSLREG_FUNCTION_TABLE = 18,
CV_HLSLREG_INTERFACE = 19,
CV_HLSLREG_FUNCTION_INPUT = 20,
CV_HLSLREG_FUNCTION_OUTPUT = 21,
CV_HLSLREG_OUTPUT_CONTROL_POINT_ID = 22,
CV_HLSLREG_INPUT_FORK_INSTANCE_ID = 23,
CV_HLSLREG_INPUT_JOIN_INSTANCE_ID = 24,
CV_HLSLREG_INPUT_CONTROL_POINT = 25,
CV_HLSLREG_OUTPUT_CONTROL_POINT = 26,
CV_HLSLREG_INPUT_PATCH_CONSTANT = 27,
CV_HLSLREG_INPUT_DOMAIN_POINT = 28,
CV_HLSLREG_THIS_POINTER = 29,
CV_HLSLREG_UNORDERED_ACCESS_VIEW = 30,
CV_HLSLREG_THREAD_GROUP_SHARED_MEMORY = 31,
CV_HLSLREG_INPUT_THREAD_ID = 32,
CV_HLSLREG_INPUT_THREAD_GROUP_ID = 33,
CV_HLSLREG_INPUT_THREAD_ID_IN_GROUP = 34,
CV_HLSLREG_INPUT_COVERAGE_MASK = 35,
CV_HLSLREG_INPUT_THREAD_ID_IN_GROUP_FLATTENED = 36,
CV_HLSLREG_INPUT_GS_INSTANCE_ID = 37,
CV_HLSLREG_OUTPUT_DEPTH_GREATER_EQUAL = 38,
CV_HLSLREG_OUTPUT_DEPTH_LESS_EQUAL = 39,
CV_HLSLREG_CYCLE_COUNTER = 40,
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,7 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_LABEL_TYPE_e
{
CV_LABEL_NEAR = 0,
CV_LABEL_FAR = 4,
}
@@ -0,0 +1,214 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_LVARFLAGS
{
[NativeBitfield("fIsParam", offset: 0, length: 1)]
[NativeBitfield("fAddrTaken", offset: 1, length: 1)]
[NativeBitfield("fCompGenx", offset: 2, length: 1)]
[NativeBitfield("fIsAggregate", offset: 3, length: 1)]
[NativeBitfield("fIsAggregated", offset: 4, length: 1)]
[NativeBitfield("fIsAliased", offset: 5, length: 1)]
[NativeBitfield("fIsAlias", offset: 6, length: 1)]
[NativeBitfield("fIsRetValue", offset: 7, length: 1)]
[NativeBitfield("fIsOptimizedOut", offset: 8, length: 1)]
[NativeBitfield("fIsEnregGlob", offset: 9, length: 1)]
[NativeBitfield("fIsEnregStat", offset: 10, length: 1)]
[NativeBitfield("unused", offset: 11, length: 5)]
public ushort _bitfield;
[NativeTypeName("unsigned short : 1")]
public ushort fIsParam
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fAddrTaken
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 1) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fCompGenx
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 2) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 2)) | ((value & 0x1u) << 2));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsAggregate
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 3) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 3)) | ((value & 0x1u) << 3));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsAggregated
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 4) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 4)) | ((value & 0x1u) << 4));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsAliased
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 5) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 5)) | ((value & 0x1u) << 5));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsAlias
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 6) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 6)) | ((value & 0x1u) << 6));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsRetValue
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 7) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 7)) | ((value & 0x1u) << 7));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsOptimizedOut
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 8) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 8)) | ((value & 0x1u) << 8));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsEnregGlob
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 9) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 9)) | ((value & 0x1u) << 9));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fIsEnregStat
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 10) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 10)) | ((value & 0x1u) << 10));
}
}
[NativeTypeName("unsigned short : 5")]
public ushort unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 11) & 0x1Fu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1Fu << 11)) | ((value & 0x1Fu) << 11));
}
}
}
@@ -0,0 +1,13 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_LVAR_ADDR_GAP
{
[NativeTypeName("unsigned short")]
public ushort gapStartOffset;
[NativeTypeName("unsigned short")]
public ushort cbRange;
}
@@ -0,0 +1,16 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_LVAR_ADDR_RANGE
{
[NativeTypeName("CV_uoff32_t")]
public uint offStart;
[NativeTypeName("unsigned short")]
public ushort isectStart;
[NativeTypeName("unsigned short")]
public ushort cbRange;
}
@@ -0,0 +1,64 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_Line_t
{
[NativeTypeName("unsigned long")]
public uint offset;
[NativeBitfield("linenumStart", offset: 0, length: 24)]
[NativeBitfield("deltaLineEnd", offset: 24, length: 7)]
[NativeBitfield("fStatement", offset: 31, length: 1)]
public uint _bitfield;
[NativeTypeName("unsigned long : 24")]
public uint linenumStart
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return _bitfield & 0xFFFFFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~0xFFFFFFu) | (value & 0xFFFFFFu);
}
}
[NativeTypeName("unsigned long : 7")]
public uint deltaLineEnd
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 24) & 0x7Fu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x7Fu << 24)) | ((value & 0x7Fu) << 24);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fStatement
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 31) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 31)) | ((value & 0x1u) << 31);
}
}
}
@@ -0,0 +1,9 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_MOCOM_UDT_e
{
CV_MOCOM_UDT_none = 0,
CV_MOCOM_UDT_ref = 1,
CV_MOCOM_UDT_value = 2,
CV_MOCOM_UDT_interface = 3,
}
@@ -0,0 +1,10 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PDMR16_NONVIRT
{
[NativeTypeName("CV_off16_t")]
public short mdisp;
}
@@ -0,0 +1,16 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PDMR16_VBASE
{
[NativeTypeName("CV_off16_t")]
public short mdisp;
[NativeTypeName("CV_off16_t")]
public short pdisp;
[NativeTypeName("CV_off16_t")]
public short vdisp;
}
@@ -0,0 +1,10 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PDMR32_NVVFCN
{
[NativeTypeName("CV_off32_t")]
public int mdisp;
}
@@ -0,0 +1,16 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PDMR32_VBASE
{
[NativeTypeName("CV_off32_t")]
public int mdisp;
[NativeTypeName("CV_off32_t")]
public int pdisp;
[NativeTypeName("CV_off32_t")]
public int vdisp;
}
@@ -0,0 +1,10 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMDR16_VFCN
{
[NativeTypeName("CV_off16_t")]
public short mdisp;
}
@@ -0,0 +1,19 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_PMEMBER
{
CV_PDM16_NONVIRT = 0x00,
CV_PDM16_VFCN = 0x01,
CV_PDM16_VBASE = 0x02,
CV_PDM32_NVVFCN = 0x03,
CV_PDM32_VBASE = 0x04,
CV_PMF16_NEARNVSA = 0x05,
CV_PMF16_NEARNVMA = 0x06,
CV_PMF16_NEARVBASE = 0x07,
CV_PMF16_FARNVSA = 0x08,
CV_PMF16_FARNVMA = 0x09,
CV_PMF16_FARVBASE = 0x0a,
CV_PMF32_NVSA = 0x0b,
CV_PMF32_NVMA = 0x0c,
CV_PMF32_VBASE = 0x0d,
}
@@ -0,0 +1,15 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR16_FARNVMA
{
[NativeTypeName("CV_uoff16_t")]
public ushort off;
[NativeTypeName("unsigned short")]
public ushort seg;
public short disp;
}
@@ -0,0 +1,13 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR16_FARNVSA
{
[NativeTypeName("CV_uoff16_t")]
public ushort off;
[NativeTypeName("unsigned short")]
public ushort seg;
}
@@ -0,0 +1,22 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR16_FARVBASE
{
[NativeTypeName("CV_uoff16_t")]
public ushort off;
[NativeTypeName("unsigned short")]
public ushort seg;
[NativeTypeName("CV_off16_t")]
public short mdisp;
[NativeTypeName("CV_off16_t")]
public short pdisp;
[NativeTypeName("CV_off16_t")]
public short vdisp;
}
@@ -0,0 +1,12 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR16_NEARNVMA
{
[NativeTypeName("CV_uoff16_t")]
public ushort off;
public short disp;
}
@@ -0,0 +1,10 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR16_NEARNVSA
{
[NativeTypeName("CV_uoff16_t")]
public ushort off;
}
@@ -0,0 +1,19 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR16_NEARVBASE
{
[NativeTypeName("CV_uoff16_t")]
public ushort off;
[NativeTypeName("CV_off16_t")]
public short mdisp;
[NativeTypeName("CV_off16_t")]
public short pdisp;
[NativeTypeName("CV_off16_t")]
public short vdisp;
}
@@ -0,0 +1,13 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR32_NVMA
{
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("CV_off32_t")]
public int disp;
}
@@ -0,0 +1,10 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR32_NVSA
{
[NativeTypeName("CV_uoff32_t")]
public uint off;
}
@@ -0,0 +1,19 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_PMFR32_VBASE
{
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("CV_off32_t")]
public int mdisp;
[NativeTypeName("CV_off32_t")]
public int pdisp;
[NativeTypeName("CV_off32_t")]
public int vdisp;
}
@@ -0,0 +1,308 @@
using System.Diagnostics.CodeAnalysis;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public partial struct CV_PROCFLAGS
{
[NativeTypeName("__AnonymousRecord_cvinfo_L3039_C5")]
public _Anonymous_e__Union Anonymous;
[UnscopedRef]
public ref byte bAll
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.bAll;
}
}
[UnscopedRef]
public ref byte grfAll
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
get
{
return ref Anonymous.grfAll;
}
}
public byte CV_PFLAG_NOFPO
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_NOFPO;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_NOFPO = value;
}
}
public byte CV_PFLAG_INT
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_INT;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_INT = value;
}
}
public byte CV_PFLAG_FAR
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_FAR;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_FAR = value;
}
}
public byte CV_PFLAG_NEVER
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_NEVER;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_NEVER = value;
}
}
public byte CV_PFLAG_NOTREACHED
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_NOTREACHED;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_NOTREACHED = value;
}
}
public byte CV_PFLAG_CUST_CALL
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_CUST_CALL;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_CUST_CALL = value;
}
}
public byte CV_PFLAG_NOINLINE
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_NOINLINE;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_NOINLINE = value;
}
}
public byte CV_PFLAG_OPTDBGINFO
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.Anonymous.CV_PFLAG_OPTDBGINFO;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.Anonymous.CV_PFLAG_OPTDBGINFO = value;
}
}
[StructLayout(LayoutKind.Explicit)]
public partial struct _Anonymous_e__Union
{
[FieldOffset(0)]
[NativeTypeName("unsigned char")]
public byte bAll;
[FieldOffset(0)]
[NativeTypeName("unsigned char")]
public byte grfAll;
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3042_C9")]
public _Anonymous_e__Struct Anonymous;
public partial struct _Anonymous_e__Struct
{
[NativeBitfield("CV_PFLAG_NOFPO", offset: 0, length: 1)]
[NativeBitfield("CV_PFLAG_INT", offset: 1, length: 1)]
[NativeBitfield("CV_PFLAG_FAR", offset: 2, length: 1)]
[NativeBitfield("CV_PFLAG_NEVER", offset: 3, length: 1)]
[NativeBitfield("CV_PFLAG_NOTREACHED", offset: 4, length: 1)]
[NativeBitfield("CV_PFLAG_CUST_CALL", offset: 5, length: 1)]
[NativeBitfield("CV_PFLAG_NOINLINE", offset: 6, length: 1)]
[NativeBitfield("CV_PFLAG_OPTDBGINFO", offset: 7, length: 1)]
public byte _bitfield;
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_NOFPO
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_INT
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 1) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_FAR
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 2) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 2)) | ((value & 0x1u) << 2));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_NEVER
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 3) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 3)) | ((value & 0x1u) << 3));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_NOTREACHED
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 4) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 4)) | ((value & 0x1u) << 4));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_CUST_CALL
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 5) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 5)) | ((value & 0x1u) << 5));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_NOINLINE
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 6) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 6)) | ((value & 0x1u) << 6));
}
}
[NativeTypeName("unsigned char : 1")]
public byte CV_PFLAG_OPTDBGINFO
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 7) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 7)) | ((value & 0x1u) << 7));
}
}
}
}
}
@@ -0,0 +1,182 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Explicit, Pack = 1)]
public partial struct CV_PUBSYMFLAGS
{
[FieldOffset(0)]
[NativeTypeName("CV_pubsymflag_t")]
public uint grfFlags;
[FieldOffset(0)]
[NativeTypeName("__AnonymousRecord_cvinfo_L3687_C5")]
public _Anonymous_e__Struct Anonymous;
public uint fCode
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.fCode;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.fCode = value;
}
}
public uint fFunction
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.fFunction;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.fFunction = value;
}
}
public uint fManaged
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.fManaged;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.fManaged = value;
}
}
public uint fMSIL
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.fMSIL;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.fMSIL = value;
}
}
public uint __unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return Anonymous.__unused;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
Anonymous.__unused = value;
}
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct _Anonymous_e__Struct
{
[NativeBitfield("fCode", offset: 0, length: 1)]
[NativeBitfield("fFunction", offset: 1, length: 1)]
[NativeBitfield("fManaged", offset: 2, length: 1)]
[NativeBitfield("fMSIL", offset: 3, length: 1)]
[NativeBitfield("__unused", offset: 4, length: 28)]
public uint _bitfield;
[NativeTypeName("CV_pubsymflag_t : 1")]
public uint fCode
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return _bitfield & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~0x1u) | (value & 0x1u);
}
}
[NativeTypeName("CV_pubsymflag_t : 1")]
public uint fFunction
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 1) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1);
}
}
[NativeTypeName("CV_pubsymflag_t : 1")]
public uint fManaged
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 2) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 2)) | ((value & 0x1u) << 2);
}
}
[NativeTypeName("CV_pubsymflag_t : 1")]
public uint fMSIL
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 3) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 3)) | ((value & 0x1u) << 3);
}
}
[NativeTypeName("CV_pubsymflag_t : 28")]
public uint __unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 4) & 0xFFFFFFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0xFFFFFFFu << 4)) | ((value & 0xFFFFFFFu) << 4);
}
}
}
}
@@ -0,0 +1,10 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_PUBSYMFLAGS_e
{
cvpsfNone = 0,
cvpsfCode = 0x00000001,
cvpsfFunction = 0x00000002,
cvpsfManaged = 0x00000004,
cvpsfMSIL = 0x00000008,
}
@@ -0,0 +1,44 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_RANGEATTR
{
[NativeBitfield("maybe", offset: 0, length: 1)]
[NativeBitfield("padding", offset: 1, length: 15)]
public ushort _bitfield;
[NativeTypeName("unsigned short : 1")]
public ushort maybe
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned short : 15")]
public ushort padding
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 1) & 0x7FFFu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x7FFFu << 1)) | ((value & 0x7FFFu) << 1));
}
}
}
@@ -0,0 +1,61 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_SEPCODEFLAGS
{
[NativeBitfield("fIsLexicalScope", offset: 0, length: 1)]
[NativeBitfield("fReturnsToParent", offset: 1, length: 1)]
[NativeBitfield("pad", offset: 2, length: 30)]
public uint _bitfield;
[NativeTypeName("unsigned long : 1")]
public uint fIsLexicalScope
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return _bitfield & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~0x1u) | (value & 0x1u);
}
}
[NativeTypeName("unsigned long : 1")]
public uint fReturnsToParent
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 1) & 0x1u;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1);
}
}
[NativeTypeName("unsigned long : 30")]
public uint pad
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (_bitfield >> 2) & 0x3FFFFFFFu;
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (_bitfield & ~(0x3FFFFFFFu << 2)) | ((value & 0x3FFFFFFFu) << 2);
}
}
}
@@ -0,0 +1,9 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_SourceChksum_t
{
CHKSUM_TYPE_NONE = 0,
CHKSUM_TYPE_MD5,
CHKSUM_TYPE_SHA1,
CHKSUM_TYPE_SHA_256,
}
@@ -0,0 +1,13 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_VTS_desc_e
{
CV_VTS_near = 0x00,
CV_VTS_far = 0x01,
CV_VTS_thin = 0x02,
CV_VTS_outer = 0x03,
CV_VTS_meta = 0x04,
CV_VTS_near32 = 0x05,
CV_VTS_far32 = 0x06,
CV_VTS_unused = 0x07,
}
@@ -0,0 +1,8 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_access_e
{
CV_private = 1,
CV_protected = 2,
CV_public = 3,
}
@@ -0,0 +1,18 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_armswitchtype
{
CV_SWT_INT1 = 0,
CV_SWT_UINT1 = 1,
CV_SWT_INT2 = 2,
CV_SWT_UINT2 = 3,
CV_SWT_INT4 = 4,
CV_SWT_UINT4 = 5,
CV_SWT_POINTER = 6,
CV_SWT_UINT1SHL1 = 7,
CV_SWT_UINT2SHL1 = 8,
CV_SWT_INT1SHL1 = 9,
CV_SWT_INT2SHL1 = 10,
CV_SWT_TBB = CV_SWT_UINT1SHL1,
CV_SWT_TBH = CV_SWT_UINT2SHL1,
}
@@ -0,0 +1,42 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_builtin_e
{
CV_BI_INVALID = 0x0000,
CV_BI_HLSL_INTERFACE_POINTER = 0x0200,
CV_BI_HLSL_TEXTURE1D = 0x0201,
CV_BI_HLSL_TEXTURE1D_ARRAY = 0x0202,
CV_BI_HLSL_TEXTURE2D = 0x0203,
CV_BI_HLSL_TEXTURE2D_ARRAY = 0x0204,
CV_BI_HLSL_TEXTURE3D = 0x0205,
CV_BI_HLSL_TEXTURECUBE = 0x0206,
CV_BI_HLSL_TEXTURECUBE_ARRAY = 0x0207,
CV_BI_HLSL_TEXTURE2DMS = 0x0208,
CV_BI_HLSL_TEXTURE2DMS_ARRAY = 0x0209,
CV_BI_HLSL_SAMPLER = 0x020a,
CV_BI_HLSL_SAMPLERCOMPARISON = 0x020b,
CV_BI_HLSL_BUFFER = 0x020c,
CV_BI_HLSL_POINTSTREAM = 0x020d,
CV_BI_HLSL_LINESTREAM = 0x020e,
CV_BI_HLSL_TRIANGLESTREAM = 0x020f,
CV_BI_HLSL_INPUTPATCH = 0x0210,
CV_BI_HLSL_OUTPUTPATCH = 0x0211,
CV_BI_HLSL_RWTEXTURE1D = 0x0212,
CV_BI_HLSL_RWTEXTURE1D_ARRAY = 0x0213,
CV_BI_HLSL_RWTEXTURE2D = 0x0214,
CV_BI_HLSL_RWTEXTURE2D_ARRAY = 0x0215,
CV_BI_HLSL_RWTEXTURE3D = 0x0216,
CV_BI_HLSL_RWBUFFER = 0x0217,
CV_BI_HLSL_BYTEADDRESS_BUFFER = 0x0218,
CV_BI_HLSL_RWBYTEADDRESS_BUFFER = 0x0219,
CV_BI_HLSL_STRUCTURED_BUFFER = 0x021a,
CV_BI_HLSL_RWSTRUCTURED_BUFFER = 0x021b,
CV_BI_HLSL_APPEND_STRUCTURED_BUFFER = 0x021c,
CV_BI_HLSL_CONSUME_STRUCTURED_BUFFER = 0x021d,
CV_BI_HLSL_MIN8FLOAT = 0x021e,
CV_BI_HLSL_MIN10FLOAT = 0x021f,
CV_BI_HLSL_MIN16FLOAT = 0x0220,
CV_BI_HLSL_MIN12INT = 0x0221,
CV_BI_HLSL_MIN16INT = 0x0222,
CV_BI_HLSL_MIN16UINT = 0x0223,
}
@@ -0,0 +1,31 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_call_e
{
CV_CALL_NEAR_C = 0x00,
CV_CALL_FAR_C = 0x01,
CV_CALL_NEAR_PASCAL = 0x02,
CV_CALL_FAR_PASCAL = 0x03,
CV_CALL_NEAR_FAST = 0x04,
CV_CALL_FAR_FAST = 0x05,
CV_CALL_SKIPPED = 0x06,
CV_CALL_NEAR_STD = 0x07,
CV_CALL_FAR_STD = 0x08,
CV_CALL_NEAR_SYS = 0x09,
CV_CALL_FAR_SYS = 0x0a,
CV_CALL_THISCALL = 0x0b,
CV_CALL_MIPSCALL = 0x0c,
CV_CALL_GENERIC = 0x0d,
CV_CALL_ALPHACALL = 0x0e,
CV_CALL_PPCCALL = 0x0f,
CV_CALL_SHCALL = 0x10,
CV_CALL_ARMCALL = 0x11,
CV_CALL_AM33CALL = 0x12,
CV_CALL_TRICALL = 0x13,
CV_CALL_SH5CALL = 0x14,
CV_CALL_M32RCALL = 0x15,
CV_CALL_CLRCALL = 0x16,
CV_CALL_INLINE = 0x17,
CV_CALL_NEAR_VECTOR = 0x18,
CV_CALL_RESERVED = 0x19,
}
@@ -0,0 +1,9 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_cookietype_e
{
CV_COOKIETYPE_COPY = 0,
CV_COOKIETYPE_XOR_SP,
CV_COOKIETYPE_XOR_BP,
CV_COOKIETYPE_XOR_R13,
}
@@ -0,0 +1,146 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_fldattr_t
{
[NativeBitfield("access", offset: 0, length: 2)]
[NativeBitfield("mprop", offset: 2, length: 3)]
[NativeBitfield("pseudo", offset: 5, length: 1)]
[NativeBitfield("noinherit", offset: 6, length: 1)]
[NativeBitfield("noconstruct", offset: 7, length: 1)]
[NativeBitfield("compgenx", offset: 8, length: 1)]
[NativeBitfield("sealed", offset: 9, length: 1)]
[NativeBitfield("unused", offset: 10, length: 6)]
public ushort _bitfield;
[NativeTypeName("unsigned short : 2")]
public ushort access
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)(_bitfield & 0x3u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~0x3u) | (value & 0x3u));
}
}
[NativeTypeName("unsigned short : 3")]
public ushort mprop
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 2) & 0x7u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x7u << 2)) | ((value & 0x7u) << 2));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort pseudo
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 5) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 5)) | ((value & 0x1u) << 5));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort noinherit
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 6) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 6)) | ((value & 0x1u) << 6));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort noconstruct
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 7) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 7)) | ((value & 0x1u) << 7));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort compgenx
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 8) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 8)) | ((value & 0x1u) << 8));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort @sealed
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 9) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 9)) | ((value & 0x1u) << 9));
}
}
[NativeTypeName("unsigned short : 6")]
public ushort unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 10) & 0x3Fu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x3Fu << 10)) | ((value & 0x3Fu) << 10));
}
}
}
@@ -0,0 +1,76 @@
using System.Runtime.CompilerServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public partial struct CV_funcattr_t
{
[NativeBitfield("cxxreturnudt", offset: 0, length: 1)]
[NativeBitfield("ctor", offset: 1, length: 1)]
[NativeBitfield("ctorvbase", offset: 2, length: 1)]
[NativeBitfield("unused", offset: 3, length: 5)]
public byte _bitfield;
[NativeTypeName("unsigned char : 1")]
public byte cxxreturnudt
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned char : 1")]
public byte ctor
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 1) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1));
}
}
[NativeTypeName("unsigned char : 1")]
public byte ctorvbase
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 2) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1u << 2)) | ((value & 0x1u) << 2));
}
}
[NativeTypeName("unsigned char : 5")]
public byte unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 3) & 0x1Fu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x1Fu << 3)) | ((value & 0x1Fu) << 3));
}
}
}
@@ -0,0 +1,19 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_int_e
{
CV_RI_CHAR = 0x00,
CV_RI_INT1 = 0x00,
CV_RI_WCHAR = 0x01,
CV_RI_UINT1 = 0x01,
CV_RI_INT2 = 0x02,
CV_RI_UINT2 = 0x03,
CV_RI_INT4 = 0x04,
CV_RI_UINT4 = 0x05,
CV_RI_INT8 = 0x06,
CV_RI_UINT8 = 0x07,
CV_RI_INT16 = 0x08,
CV_RI_UINT16 = 0x09,
CV_RI_CHAR16 = 0x0a,
CV_RI_CHAR32 = 0x0b,
}
@@ -0,0 +1,10 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_integral_e
{
CV_IN_1BYTE = 0x00,
CV_IN_2BYTE = 0x01,
CV_IN_4BYTE = 0x02,
CV_IN_8BYTE = 0x03,
CV_IN_16BYTE = 0x04,
}
@@ -0,0 +1,15 @@
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_lvar_attr
{
[NativeTypeName("CV_uoff32_t")]
public uint off;
[NativeTypeName("unsigned short")]
public ushort seg;
public CV_LVARFLAGS flags;
}
@@ -0,0 +1,42 @@
using System.Runtime.CompilerServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public partial struct CV_matrixattr_t
{
[NativeBitfield("row_major", offset: 0, length: 1)]
[NativeBitfield("unused", offset: 1, length: 7)]
public byte _bitfield;
[NativeTypeName("unsigned char : 1")]
public byte row_major
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned char : 7")]
public byte unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (byte)((_bitfield >> 1) & 0x7Fu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (byte)((_bitfield & ~(0x7Fu << 1)) | ((value & 0x7Fu) << 1));
}
}
}
@@ -0,0 +1,12 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_methodprop_e
{
CV_MTvanilla = 0x00,
CV_MTvirtual = 0x01,
CV_MTstatic = 0x02,
CV_MTfriend = 0x03,
CV_MTintro = 0x04,
CV_MTpurevirt = 0x05,
CV_MTpureintro = 0x06,
}
@@ -0,0 +1,24 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_modifier_e
{
CV_MOD_INVALID = 0x0000,
CV_MOD_CONST = 0x0001,
CV_MOD_VOLATILE = 0x0002,
CV_MOD_UNALIGNED = 0x0003,
CV_MOD_HLSL_UNIFORM = 0x0200,
CV_MOD_HLSL_LINE = 0x0201,
CV_MOD_HLSL_TRIANGLE = 0x0202,
CV_MOD_HLSL_LINEADJ = 0x0203,
CV_MOD_HLSL_TRIANGLEADJ = 0x0204,
CV_MOD_HLSL_LINEAR = 0x0205,
CV_MOD_HLSL_CENTROID = 0x0206,
CV_MOD_HLSL_CONSTINTERP = 0x0207,
CV_MOD_HLSL_NOPERSPECTIVE = 0x0208,
CV_MOD_HLSL_SAMPLE = 0x0209,
CV_MOD_HLSL_CENTER = 0x020a,
CV_MOD_HLSL_SNORM = 0x020b,
CV_MOD_HLSL_UNORM = 0x020c,
CV_MOD_HLSL_PRECISE = 0x020d,
CV_MOD_HLSL_UAV_GLOBALLY_COHERENT = 0x020e,
}
@@ -0,0 +1,78 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_modifier_t
{
[NativeBitfield("MOD_const", offset: 0, length: 1)]
[NativeBitfield("MOD_volatile", offset: 1, length: 1)]
[NativeBitfield("MOD_unaligned", offset: 2, length: 1)]
[NativeBitfield("MOD_unused", offset: 3, length: 13)]
public ushort _bitfield;
[NativeTypeName("unsigned short : 1")]
public ushort MOD_const
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort MOD_volatile
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 1) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort MOD_unaligned
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 2) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 2)) | ((value & 0x1u) << 2));
}
}
[NativeTypeName("unsigned short : 13")]
public ushort MOD_unused
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 3) & 0x1FFFu);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1FFFu << 3)) | ((value & 0x1FFFu) << 3));
}
}
}
@@ -0,0 +1,14 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_pmtype_e
{
CV_PMTYPE_Undef = 0x00,
CV_PMTYPE_D_Single = 0x01,
CV_PMTYPE_D_Multiple = 0x02,
CV_PMTYPE_D_Virtual = 0x03,
CV_PMTYPE_D_General = 0x04,
CV_PMTYPE_F_Single = 0x05,
CV_PMTYPE_F_Multiple = 0x06,
CV_PMTYPE_F_Virtual = 0x07,
CV_PMTYPE_F_General = 0x08,
}
@@ -0,0 +1,13 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_prmode_e
{
CV_TM_DIRECT = 0,
CV_TM_NPTR = 1,
CV_TM_FPTR = 2,
CV_TM_HPTR = 3,
CV_TM_NPTR32 = 4,
CV_TM_FPTR32 = 5,
CV_TM_NPTR64 = 6,
CV_TM_NPTR128 = 7,
}
@@ -0,0 +1,248 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public partial struct CV_prop_t
{
[NativeBitfield("packed", offset: 0, length: 1)]
[NativeBitfield("ctor", offset: 1, length: 1)]
[NativeBitfield("ovlops", offset: 2, length: 1)]
[NativeBitfield("isnested", offset: 3, length: 1)]
[NativeBitfield("cnested", offset: 4, length: 1)]
[NativeBitfield("opassign", offset: 5, length: 1)]
[NativeBitfield("opcast", offset: 6, length: 1)]
[NativeBitfield("fwdref", offset: 7, length: 1)]
[NativeBitfield("scoped", offset: 8, length: 1)]
[NativeBitfield("hasuniquename", offset: 9, length: 1)]
[NativeBitfield("sealed", offset: 10, length: 1)]
[NativeBitfield("hfa", offset: 11, length: 2)]
[NativeBitfield("intrinsic", offset: 13, length: 1)]
[NativeBitfield("mocom", offset: 14, length: 2)]
public ushort _bitfield;
[NativeTypeName("unsigned short : 1")]
public ushort packed
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)(_bitfield & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~0x1u) | (value & 0x1u));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort ctor
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 1) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 1)) | ((value & 0x1u) << 1));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort ovlops
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 2) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 2)) | ((value & 0x1u) << 2));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort isnested
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 3) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 3)) | ((value & 0x1u) << 3));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort cnested
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 4) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 4)) | ((value & 0x1u) << 4));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort opassign
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 5) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 5)) | ((value & 0x1u) << 5));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort opcast
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 6) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 6)) | ((value & 0x1u) << 6));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort fwdref
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 7) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 7)) | ((value & 0x1u) << 7));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort scoped
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 8) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 8)) | ((value & 0x1u) << 8));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort hasuniquename
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 9) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 9)) | ((value & 0x1u) << 9));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort @sealed
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 10) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 10)) | ((value & 0x1u) << 10));
}
}
[NativeTypeName("unsigned short : 2")]
public ushort hfa
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 11) & 0x3u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x3u << 11)) | ((value & 0x3u) << 11));
}
}
[NativeTypeName("unsigned short : 1")]
public ushort intrinsic
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 13) & 0x1u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x1u << 13)) | ((value & 0x1u) << 13));
}
}
[NativeTypeName("unsigned short : 2")]
public ushort mocom
{
[MethodImpl(MethodImplOptions.AggressiveInlining)]
readonly get
{
return (ushort)((_bitfield >> 14) & 0x3u);
}
[MethodImpl(MethodImplOptions.AggressiveInlining)]
set
{
_bitfield = (ushort)((_bitfield & ~(0x3u << 14)) | ((value & 0x3u) << 14));
}
}
}
@@ -0,0 +1,12 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_ptrmode_e
{
CV_PTR_MODE_PTR = 0x00,
CV_PTR_MODE_REF = 0x01,
CV_PTR_MODE_LVREF = 0x01,
CV_PTR_MODE_PMEM = 0x02,
CV_PTR_MODE_PMFUNC = 0x03,
CV_PTR_MODE_RVREF = 0x04,
CV_PTR_MODE_RESERVED = 0x05,
}
@@ -0,0 +1,19 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_ptrtype_e
{
CV_PTR_NEAR = 0x00,
CV_PTR_FAR = 0x01,
CV_PTR_HUGE = 0x02,
CV_PTR_BASE_SEG = 0x03,
CV_PTR_BASE_VAL = 0x04,
CV_PTR_BASE_SEGVAL = 0x05,
CV_PTR_BASE_ADDR = 0x06,
CV_PTR_BASE_SEGADDR = 0x07,
CV_PTR_BASE_TYPE = 0x08,
CV_PTR_BASE_SELF = 0x09,
CV_PTR_NEAR32 = 0x0a,
CV_PTR_FAR32 = 0x0b,
CV_PTR_64 = 0x0c,
CV_PTR_UNUSEDPTR = 0x0d,
}
@@ -0,0 +1,12 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_real_e
{
CV_RC_REAL32 = 0x00,
CV_RC_REAL64 = 0x01,
CV_RC_REAL80 = 0x02,
CV_RC_REAL128 = 0x03,
CV_RC_REAL48 = 0x04,
CV_RC_REAL32PP = 0x05,
CV_RC_REAL16 = 0x06,
}
@@ -0,0 +1,8 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_special2_e
{
CV_S2_BIT = 0x00,
CV_S2_PASCHAR = 0x01,
CV_S2_BOOL32FF = 0x02,
}
@@ -0,0 +1,14 @@
namespace AssetRipper.Bindings.MsPdbCore.CodeView;
public enum CV_special_e
{
CV_SP_NOTYPE = 0x00,
CV_SP_ABS = 0x01,
CV_SP_SEGMENT = 0x02,
CV_SP_VOID = 0x03,
CV_SP_CURRENCY = 0x04,
CV_SP_NBASICSTR = 0x05,
CV_SP_FBASICSTR = 0x06,
CV_SP_NOTTRANS = 0x07,
CV_SP_HRESULT = 0x08,
}
Loaded 100 of 351 files, more files were not shown because too many files have changed in this diff. Show more