Game.Modding.Toolchain.Dependencies.VsWhereEntry
Assembly:
Assembly-CSharp (likely; the project binary that contains modding/toolchain code)
Namespace:
Game.Modding.Toolchain.Dependencies
Type:
internal class
Base:
System.Object
Summary:
Represents a single entry returned or constructed from a vswhere query. Instances hold information about a discovered Visual Studio (or related) installation such as its display name, installation path, whether it is a prerelease, and a catalog/source classification. This type is internal to the toolchain and is used by the modding toolchain to locate Visual Studio/MSBuild installations required for building/modding workflows.
Fields
-
public string displayName
Holds the human-readable display name of the Visual Studio installation (for example "Visual Studio 2022 Community"). -
public bool isPrerelease
True if the discovered installation is a prerelease version; false for stable releases. -
public string productPath
Path to the installed product (typically the root folder of the Visual Studio instance or the path to devenv/msbuild location). Used by the toolchain to locate MSBuild, developer command prompt tools, or other binaries. -
public VsWhereCatalog catalog
A reference to a VsWhereCatalog value/type (declared elsewhere in the same namespace). It classifies the catalog/source/category of the found installation (e.g., Visual Studio, BuildTools, or other source labels used by the toolchain).
Properties
- This type defines no properties; it exposes four public fields (see Fields).
Constructors
internal VsWhereEntry()
The default parameterless constructor is used to create instances. The class is internal, so construction and usage are intended only within the same assembly.
Methods
- This type declares no methods.
Usage Example
// Example usage inside the modding toolchain (same assembly):
var entry = new VsWhereEntry
{
displayName = "Visual Studio 2022 Community",
isPrerelease = false,
productPath = @"C:\Program Files\Microsoft Visual Studio\2022\Community",
catalog = VsWhereCatalog.VisualStudio // VsWhereCatalog is defined elsewhere in the same namespace
};
// Typical follow-up: use productPath to locate MSBuild or tools needed to build mods
string msbuildPath = Path.Combine(entry.productPath, "MSBuild", "Current", "Bin", "MSBuild.exe");
if (File.Exists(msbuildPath))
{
// use msbuildPath to invoke the compiler or set up build tasks
}
Additional notes: - Instances of this class are typically created by parsing vswhere output (JSON) or by helper utilities in the toolchain that wrap the vswhere executable. - Because the type is internal, it is not intended as a public API for mods; it is an implementation detail of the modding toolchain used to find and classify installed developer tools.