EmitBaseline.CreateInitialBaseline 메서드

정의

오버로드

CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>)
사용되지 않음.

EmitBaseline 편집하기 전에 모듈의 메타데이터에서 를 만들고 메서드에서 로컬 이름 배열로 매핑하는 함수에서 을 만듭니다.

CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)
사용되지 않음.

EmitBaseline 편집하기 전에 모듈의 메타데이터에서 를 만들고 메서드에서 로컬 이름 배열로 매핑하는 함수에서 을 만듭니다.

CreateInitialBaseline(Compilation, ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)

EmitBaseline 편집하기 전에 모듈의 메타데이터에서 를 만들고 메서드에서 로컬 이름 배열로 매핑하는 함수에서 을 만듭니다.

CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>)

Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs

주의

This overload is no longer supported

EmitBaseline 편집하기 전에 모듈의 메타데이터에서 를 만들고 메서드에서 로컬 이름 배열로 매핑하는 함수에서 을 만듭니다.

public:
 static Microsoft::CodeAnalysis::Emit::EmitBaseline ^ CreateInitialBaseline(Microsoft::CodeAnalysis::ModuleMetadata ^ module, Func<System::Reflection::Metadata::MethodDefinitionHandle, Microsoft::CodeAnalysis::Emit::EditAndContinueMethodDebugInformation> ^ debugInformationProvider);
public static Microsoft.CodeAnalysis.Emit.EmitBaseline CreateInitialBaseline (Microsoft.CodeAnalysis.ModuleMetadata module, Func<System.Reflection.Metadata.MethodDefinitionHandle,Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> debugInformationProvider);
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
[System.Obsolete("This overload is no longer supported", true)]
public static Microsoft.CodeAnalysis.Emit.EmitBaseline CreateInitialBaseline (Microsoft.CodeAnalysis.ModuleMetadata module, Func<System.Reflection.Metadata.MethodDefinitionHandle,Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> debugInformationProvider);
static member CreateInitialBaseline : Microsoft.CodeAnalysis.ModuleMetadata * Func<System.Reflection.Metadata.MethodDefinitionHandle, Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> -> Microsoft.CodeAnalysis.Emit.EmitBaseline
[<System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)>]
[<System.Obsolete("This overload is no longer supported", true)>]
static member CreateInitialBaseline : Microsoft.CodeAnalysis.ModuleMetadata * Func<System.Reflection.Metadata.MethodDefinitionHandle, Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> -> Microsoft.CodeAnalysis.Emit.EmitBaseline
Public Shared Function CreateInitialBaseline (module As ModuleMetadata, debugInformationProvider As Func(Of MethodDefinitionHandle, EditAndContinueMethodDebugInformation)) As EmitBaseline

매개 변수

module
ModuleMetadata

편집하기 전에 모듈의 메타데이터입니다.

debugInformationProvider
Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>

메서드 핸들에 대한 함수는 컴파일러에서 PDB로 내보낸 편집 및 계속 디버그 정보를 반환합니다. 지정된 메서드에 대한 디버그 정보를 읽을 수 없는 경우 함수가 throw InvalidDataException 됩니다. 이 예외 및 IOException 는 catch되어 내보내기 진단으로 변환됩니다. 다른 예외가 전달됩니다.

반환

EmitBaseline 모듈의 입니다.

특성

예외

module 는 PE 이미지가 아닙니다.

debugInformationProvider가 null입니다.

모듈 메타데이터를 읽는 동안 오류가 발생했습니다.

모듈 메타데이터가 잘못되었습니다.

모듈이 삭제되었습니다.

적용 대상

CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)

Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs
Source:
EmitBaseline.cs

주의

This overload is no longer supported

EmitBaseline 편집하기 전에 모듈의 메타데이터에서 를 만들고 메서드에서 로컬 이름 배열로 매핑하는 함수에서 을 만듭니다.

public:
 static Microsoft::CodeAnalysis::Emit::EmitBaseline ^ CreateInitialBaseline(Microsoft::CodeAnalysis::ModuleMetadata ^ module, Func<System::Reflection::Metadata::MethodDefinitionHandle, Microsoft::CodeAnalysis::Emit::EditAndContinueMethodDebugInformation> ^ debugInformationProvider, Func<System::Reflection::Metadata::MethodDefinitionHandle, System::Reflection::Metadata::StandaloneSignatureHandle> ^ localSignatureProvider, bool hasPortableDebugInformation);
public static Microsoft.CodeAnalysis.Emit.EmitBaseline CreateInitialBaseline (Microsoft.CodeAnalysis.ModuleMetadata module, Func<System.Reflection.Metadata.MethodDefinitionHandle,Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> debugInformationProvider, Func<System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.Metadata.StandaloneSignatureHandle> localSignatureProvider, bool hasPortableDebugInformation);
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
[System.Obsolete("This overload is no longer supported", true)]
public static Microsoft.CodeAnalysis.Emit.EmitBaseline CreateInitialBaseline (Microsoft.CodeAnalysis.ModuleMetadata module, Func<System.Reflection.Metadata.MethodDefinitionHandle,Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> debugInformationProvider, Func<System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.Metadata.StandaloneSignatureHandle> localSignatureProvider, bool hasPortableDebugInformation);
static member CreateInitialBaseline : Microsoft.CodeAnalysis.ModuleMetadata * Func<System.Reflection.Metadata.MethodDefinitionHandle, Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> * Func<System.Reflection.Metadata.MethodDefinitionHandle, System.Reflection.Metadata.StandaloneSignatureHandle> * bool -> Microsoft.CodeAnalysis.Emit.EmitBaseline
[<System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)>]
[<System.Obsolete("This overload is no longer supported", true)>]
static member CreateInitialBaseline : Microsoft.CodeAnalysis.ModuleMetadata * Func<System.Reflection.Metadata.MethodDefinitionHandle, Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> * Func<System.Reflection.Metadata.MethodDefinitionHandle, System.Reflection.Metadata.StandaloneSignatureHandle> * bool -> Microsoft.CodeAnalysis.Emit.EmitBaseline
Public Shared Function CreateInitialBaseline (module As ModuleMetadata, debugInformationProvider As Func(Of MethodDefinitionHandle, EditAndContinueMethodDebugInformation), localSignatureProvider As Func(Of MethodDefinitionHandle, StandaloneSignatureHandle), hasPortableDebugInformation As Boolean) As EmitBaseline

매개 변수

module
ModuleMetadata

편집하기 전에 모듈의 메타데이터입니다.

debugInformationProvider
Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>

메서드 핸들에 대한 함수는 컴파일러에서 PDB로 내보낸 편집 및 계속 디버그 정보를 반환합니다. 지정된 메서드에 대한 디버그 정보를 읽을 수 없는 경우 함수가 throw InvalidDataException 됩니다. 이 예외 및 IOException 는 catch되어 내보내기 진단으로 변환됩니다. 다른 예외가 전달됩니다.

localSignatureProvider
Func<MethodDefinitionHandle,StandaloneSignatureHandle>

메서드 핸들에 대해 해당 지역 변수의 서명을 반환하는 함수입니다. 지정된 메서드에 대한 정보를 읽을 수 없는 경우 함수가 throw InvalidDataException 됩니다. 이 예외 및 IOException 는 catch되어 내보내기 진단으로 변환됩니다. 다른 예외가 전달됩니다.

hasPortableDebugInformation
Boolean

True이면 기준 PDB를 이식할 수 있습니다.

반환

EmitBaseline 모듈의 입니다.

특성

예외

localSignatureProvider가 null입니다.

모듈 메타데이터를 읽는 동안 오류가 발생했습니다.

모듈 메타데이터가 잘못되었습니다.

모듈이 삭제되었습니다.

설명

이 메서드를 사용하여 초기 기준만 만듭니다. 후속 기준은 후속 컴파일의 차이를 내보낸 경우 자동으로 만들어집니다.

활성 메서드(프레임이 스택에 할당된 메서드)가 업데이트되면 해당 지역 변수의 값을 보존해야 합니다. 지역 변수 이름을 프레임의 슬롯에 매핑하는 것은 메타데이터에 포함되지 않으므로 에서 제공해야 debugInformationProvider합니다.

debugInformationProvider 초기 생성에만 필요합니다. 후속 세대에 대한 매핑은 을 통해 EmitBaseline전달됩니다. 컴파일러는 명명된 지역 변수(명명된 임시 변수 포함)에 슬롯을 소스 코드에 표시되는 순서로 할당합니다. 이 속성을 사용하면 컴파일러가 초기 생성에 대한 지역 변수 매핑을 다시 구성할 수 있습니다. 후속 세대는 이전 세대의 두 변수 사이에 새 변수를 추가할 수 있습니다. 이전 세대 변수의 슬롯을 보존해야 하므로 유일한 옵션은 이러한 새 변수를 끝에 추가하는 것입니다. 따라서 슬롯 순서가 구문 순서와 더 이상 일치하지 않습니다. 따라서 다음 세대로 전달 Baseline 해야 합니다(예: 후속 컴파일에서 생성된 메타데이터에 따라 처음부터 새 EmitBaselines 만들기).

적용 대상

CreateInitialBaseline(Compilation, ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)

Source:
EmitBaseline.cs

EmitBaseline 편집하기 전에 모듈의 메타데이터에서 를 만들고 메서드에서 로컬 이름 배열로 매핑하는 함수에서 을 만듭니다.

public static Microsoft.CodeAnalysis.Emit.EmitBaseline CreateInitialBaseline (Microsoft.CodeAnalysis.Compilation compilation, Microsoft.CodeAnalysis.ModuleMetadata module, Func<System.Reflection.Metadata.MethodDefinitionHandle,Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> debugInformationProvider, Func<System.Reflection.Metadata.MethodDefinitionHandle,System.Reflection.Metadata.StandaloneSignatureHandle> localSignatureProvider, bool hasPortableDebugInformation);
static member CreateInitialBaseline : Microsoft.CodeAnalysis.Compilation * Microsoft.CodeAnalysis.ModuleMetadata * Func<System.Reflection.Metadata.MethodDefinitionHandle, Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation> * Func<System.Reflection.Metadata.MethodDefinitionHandle, System.Reflection.Metadata.StandaloneSignatureHandle> * bool -> Microsoft.CodeAnalysis.Emit.EmitBaseline
Public Shared Function CreateInitialBaseline (compilation As Compilation, module As ModuleMetadata, debugInformationProvider As Func(Of MethodDefinitionHandle, EditAndContinueMethodDebugInformation), localSignatureProvider As Func(Of MethodDefinitionHandle, StandaloneSignatureHandle), hasPortableDebugInformation As Boolean) As EmitBaseline

매개 변수

compilation
Compilation

초기 Microsoft.CodeAnalysis.Emit.EmitBaseline.Compilation입니다.

module
ModuleMetadata

편집하기 전에 모듈의 메타데이터입니다.

debugInformationProvider
Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>

메서드 핸들에 대한 함수는 컴파일러에서 PDB로 내보낸 편집 및 계속 디버그 정보를 반환합니다. 지정된 메서드에 대한 디버그 정보를 읽을 수 없는 경우 함수가 throw InvalidDataException 됩니다. 이 예외 및 IOException 는 catch되어 내보내기 진단으로 변환됩니다. 다른 예외가 전달됩니다.

localSignatureProvider
Func<MethodDefinitionHandle,StandaloneSignatureHandle>

메서드 핸들에 대해 해당 지역 변수의 서명을 반환하는 함수입니다. 지정된 메서드에 대한 정보를 읽을 수 없는 경우 함수가 throw InvalidDataException 됩니다. 이 예외 및 IOException 는 catch되어 내보내기 진단으로 변환됩니다. 다른 예외가 전달됩니다.

hasPortableDebugInformation
Boolean

True이면 기준 PDB를 이식할 수 있습니다.

반환

EmitBaseline 모듈의 입니다.

예외

localSignatureProvider가 null입니다.

모듈 메타데이터를 읽는 동안 오류가 발생했습니다.

모듈 메타데이터가 잘못되었습니다.

모듈이 삭제되었습니다.

설명

이 메서드를 사용하여 초기 기준만 만듭니다. 후속 기준은 후속 컴파일의 차이를 내보낸 경우 자동으로 만들어집니다.

활성 메서드(프레임이 스택에 할당된 메서드)가 업데이트되면 해당 지역 변수의 값을 보존해야 합니다. 지역 변수 이름을 프레임의 슬롯에 매핑하는 것은 메타데이터에 포함되지 않으므로 에서 제공해야 debugInformationProvider합니다.

debugInformationProvider 초기 생성에만 필요합니다. 후속 세대에 대한 매핑은 을 통해 EmitBaseline전달됩니다. 컴파일러는 명명된 지역 변수(명명된 임시 변수 포함)에 슬롯을 소스 코드에 표시되는 순서로 할당합니다. 이 속성을 사용하면 컴파일러가 초기 생성에 대한 지역 변수 매핑을 다시 구성할 수 있습니다. 후속 세대는 이전 세대의 두 변수 사이에 새 변수를 추가할 수 있습니다. 이전 세대 변수의 슬롯을 보존해야 하므로 유일한 옵션은 이러한 새 변수를 끝에 추가하는 것입니다. 따라서 슬롯 순서가 구문 순서와 더 이상 일치하지 않습니다. 따라서 다음 세대로 전달 Baseline 해야 합니다(예: 후속 컴파일에서 생성된 메타데이터에 따라 처음부터 새 EmitBaselines 만들기).

적용 대상