Imported Upstream version 4.0.0~alpha1

Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
This commit is contained in:
Jo Shields
2015-04-07 09:35:12 +01:00
parent 283343f570
commit 3c1f479b9d
22469 changed files with 2931443 additions and 869343 deletions

View File

@@ -23,7 +23,9 @@
*/
using System;
using System.Runtime.InteropServices;
#if !NO_SYMBOL_WRITER
using System.Diagnostics.SymbolStore;
#endif
using IKVM.Reflection.Emit;
namespace IKVM.Reflection.Impl
@@ -41,13 +43,30 @@ namespace IKVM.Reflection.Impl
public uint PointerToRawData;
}
#if NO_SYMBOL_WRITER
struct SymbolToken
{
internal SymbolToken(int value) { }
}
interface ISymbolWriterImpl
{
byte[] GetDebugInfo(ref IMAGE_DEBUG_DIRECTORY idd);
void RemapToken(int oldToken, int newToken);
void DefineLocalVariable2(string name, FieldAttributes attributes, int signature, int addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
void OpenMethod(SymbolToken symbolToken, MethodBase mb);
bool IsDeterministic { get; }
}
#else
interface ISymbolWriterImpl : ISymbolWriter
{
byte[] GetDebugInfo(ref IMAGE_DEBUG_DIRECTORY idd);
void RemapToken(int oldToken, int newToken);
void DefineLocalVariable2(string name, FieldAttributes attributes, int signature, SymAddressKind addrKind, int addr1, int addr2, int addr3, int startOffset, int endOffset);
void OpenMethod(SymbolToken symbolToken, MethodBase mb);
bool IsDeterministic { get; }
}
#endif
static class SymbolSupport
{