EmitBaseline.CreateInitialBaseline Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>) |
Obsoleti.
Crea un EmitBaseline oggetto dai metadati del modulo prima di modificare e da una funzione che esegue il mapping da un metodo a una matrice di nomi locali. |
CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean) |
Obsoleti.
Crea un EmitBaseline oggetto dai metadati del modulo prima di modificare e da una funzione che esegue il mapping da un metodo a una matrice di nomi locali. |
CreateInitialBaseline(Compilation, ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean) |
Crea un EmitBaseline oggetto dai metadati del modulo prima di modificare e da una funzione che esegue il mapping da un metodo a una matrice di nomi locali. |
CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>)
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
Attenzione
This overload is no longer supported
Crea un EmitBaseline oggetto dai metadati del modulo prima di modificare e da una funzione che esegue il mapping da un metodo a una matrice di nomi locali.
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
Parametri
- module
- ModuleMetadata
Metadati del modulo prima della modifica.
- debugInformationProvider
- Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>
Una funzione che per un handle di metodo restituisce le informazioni di debug Edit e Continue generate dal compilatore nel PDB. La funzione deve generare InvalidDataException se le informazioni di debug non possono essere lette per il metodo specificato. Questa eccezione e IOException viene intercettata e convertita in una diagnostica di emissione. Vengono passate altre eccezioni.
Restituisce
Oggetto EmitBaseline per il modulo.
- Attributi
Eccezioni
module
non è un'immagine PE.
debugInformationProvider
è null.
Errore durante la lettura dei metadati del modulo.
I metadati del modulo non sono validi.
Il modulo è stato eliminato.
Si applica a
CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
Attenzione
This overload is no longer supported
Crea un EmitBaseline oggetto dai metadati del modulo prima di modificare e da una funzione che esegue il mapping da un metodo a una matrice di nomi locali.
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
Parametri
- module
- ModuleMetadata
Metadati del modulo prima della modifica.
- debugInformationProvider
- Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>
Una funzione che per un handle di metodo restituisce le informazioni di debug Edit e Continue generate dal compilatore nel PDB. La funzione deve generare InvalidDataException se le informazioni di debug non possono essere lette per il metodo specificato. Questa eccezione e IOException viene intercettata e convertita in una diagnostica di emissione. Vengono passate altre eccezioni.
- localSignatureProvider
- Func<MethodDefinitionHandle,StandaloneSignatureHandle>
Funzione che per un handle di metodo restituisce la firma delle variabili locali. La funzione deve generare InvalidDataException se le informazioni non possono essere lette per il metodo specificato. Questa eccezione e IOException viene intercettata e convertita in una diagnostica di emissione. Vengono passate altre eccezioni.
- hasPortableDebugInformation
- Boolean
True se il PDB di base è portabile.
Restituisce
Oggetto EmitBaseline per il modulo.
- Attributi
Eccezioni
localSignatureProvider
è null.
Errore durante la lettura dei metadati del modulo.
I metadati del modulo non sono validi.
Il modulo è stato eliminato.
Commenti
Solo la baseline iniziale viene creata usando questo metodo; le baseline successive vengono create automaticamente quando si generano le differenze nelle compilazioni successive.
Quando un metodo attivo (uno per il quale viene allocato un frame in uno stack) viene aggiornato i valori delle variabili locali da conservare. Il mapping dei nomi delle variabili locali ai relativi slot nel frame non è incluso nei metadati e pertanto deve essere fornito da debugInformationProvider
.
È debugInformationProvider
necessario solo per la generazione iniziale. Il mapping per le generazioni successive viene trasportato tramite EmitBaseline. Il compilatore assegna gli slot alle variabili locali denominate (incluse le variabili temporanee denominate) l'ordine in cui vengono visualizzati nel codice sorgente. Questa proprietà consente al compilatore di ricostruire il mapping delle variabili locali per la generazione iniziale. Una generazione successiva può aggiungere una nuova variabile tra due variabili della generazione precedente. Poiché gli slot delle variabili di generazione precedenti devono essere mantenuti, l'unica opzione consiste nell'aggiungere queste nuove variabili alla fine. L'ordinamento degli slot quindi non corrisponde più all'ordinamento della sintassi. È quindi necessario passare Baseline alla generazione successiva (anziché creare nuovi EmitBaselineoggetti da zero in base ai metadati prodotti dalle compilazioni successive).
Si applica a
CreateInitialBaseline(Compilation, ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)
- Origine:
- EmitBaseline.cs
- Origine:
- EmitBaseline.cs
Crea un EmitBaseline oggetto dai metadati del modulo prima di modificare e da una funzione che esegue il mapping da un metodo a una matrice di nomi locali.
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
Parametri
- compilation
- Compilation
Iniziali Microsoft.CodeAnalysis.Emit.EmitBaseline.Compilation.
- module
- ModuleMetadata
Metadati del modulo prima della modifica.
- debugInformationProvider
- Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>
Una funzione che per un handle di metodo restituisce le informazioni di debug Edit e Continue generate dal compilatore nel PDB. La funzione deve generare InvalidDataException se le informazioni di debug non possono essere lette per il metodo specificato. Questa eccezione e IOException viene intercettata e convertita in una diagnostica di emissione. Vengono passate altre eccezioni.
- localSignatureProvider
- Func<MethodDefinitionHandle,StandaloneSignatureHandle>
Funzione che per un handle di metodo restituisce la firma delle variabili locali. La funzione deve generare InvalidDataException se le informazioni non possono essere lette per il metodo specificato. Questa eccezione e IOException viene intercettata e convertita in una diagnostica di emissione. Vengono passate altre eccezioni.
- hasPortableDebugInformation
- Boolean
True se il PDB di base è portabile.
Restituisce
Oggetto EmitBaseline per il modulo.
Eccezioni
localSignatureProvider
è null.
Errore durante la lettura dei metadati del modulo.
I metadati del modulo non sono validi.
Il modulo è stato eliminato.
Commenti
Solo la baseline iniziale viene creata usando questo metodo; le baseline successive vengono create automaticamente quando si generano le differenze nelle compilazioni successive.
Quando un metodo attivo (uno per il quale viene allocato un frame in uno stack) viene aggiornato i valori delle variabili locali da conservare. Il mapping dei nomi delle variabili locali ai relativi slot nel frame non è incluso nei metadati e pertanto deve essere fornito da debugInformationProvider
.
È debugInformationProvider
necessario solo per la generazione iniziale. Il mapping per le generazioni successive viene trasportato tramite EmitBaseline. Il compilatore assegna gli slot alle variabili locali denominate (incluse le variabili temporanee denominate) l'ordine in cui vengono visualizzati nel codice sorgente. Questa proprietà consente al compilatore di ricostruire il mapping delle variabili locali per la generazione iniziale. Una generazione successiva può aggiungere una nuova variabile tra due variabili della generazione precedente. Poiché gli slot delle variabili di generazione precedenti devono essere mantenuti, l'unica opzione consiste nell'aggiungere queste nuove variabili alla fine. L'ordinamento degli slot quindi non corrisponde più all'ordinamento della sintassi. È quindi necessario passare Baseline alla generazione successiva (anziché creare nuovi EmitBaselineoggetti da zero in base ai metadati prodotti dalle compilazioni successive).