/* Copyright (C) 2014-2019 de4dot@gmail.com This file is part of dnSpy dnSpy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. dnSpy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with dnSpy. If not, see . */ using dnSpy.Contracts.Debugger.DotNet; using dnSpy.Debugger.DotNet.Metadata; namespace dnSpy.Contracts.Debugger { /// /// Extension methods /// public static class DbgRuntimeExtensions { /// /// Gets the reflection runtime or null if this isn't a managed runtime /// /// Debugger runtime /// public static DmdRuntime? GetReflectionRuntime(this DbgRuntime runtime) => (runtime.InternalRuntime as DbgDotNetInternalRuntime)?.ReflectionRuntime; /// /// Gets the internal .NET runtime or null if it's not a managed runtime /// /// /// public static DbgDotNetInternalRuntime? GetDotNetInternalRuntime(this DbgRuntime runtime) => runtime.InternalRuntime as DbgDotNetInternalRuntime; } }