EmitBaseline.CreateInitialBaseline Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>) |
Obsoletos.
Crea un EmitBaseline objeto a partir de los metadatos del módulo antes de editar y desde una función que se asigna desde un método a una matriz de nombres locales. |
CreateInitialBaseline(ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean) |
Obsoletos.
Crea un EmitBaseline objeto a partir de los metadatos del módulo antes de editar y desde una función que se asigna desde un método a una matriz de nombres locales. |
CreateInitialBaseline(Compilation, ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean) |
Crea un EmitBaseline objeto a partir de los metadatos del módulo antes de editar y desde una función que se asigna desde un método a una matriz de nombres locales. |
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
Precaución
This overload is no longer supported
Crea un EmitBaseline objeto a partir de los metadatos del módulo antes de editar y desde una función que se asigna desde un método a una matriz de nombres locales.
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
Parámetros
- module
- ModuleMetadata
Metadatos del módulo antes de editarlos.
- debugInformationProvider
- Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>
Una función que para un identificador de método devuelve la información de edición y continuación de depuración emitida por el compilador en PDB. La función iniciará InvalidDataException si la información de depuración no se puede leer para el método especificado. Esta excepción y IOException se detectan y se convierten en un diagnóstico de emisión. Se pasan otras excepciones.
Devoluciones
para EmitBaseline el módulo.
- Atributos
Excepciones
module
no es una imagen pe.
debugInformationProvider
es null.
Error al leer los metadatos del módulo.
Los metadatos del módulo no son válidos.
Se ha eliminado el módulo.
Se aplica a
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
Precaución
This overload is no longer supported
Crea un EmitBaseline objeto a partir de los metadatos del módulo antes de editar y desde una función que se asigna desde un método a una matriz de nombres locales.
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
Parámetros
- module
- ModuleMetadata
Metadatos del módulo antes de editarlos.
- debugInformationProvider
- Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>
Una función que para un identificador de método devuelve la información de edición y continuación de depuración emitida por el compilador en PDB. La función iniciará InvalidDataException si la información de depuración no se puede leer para el método especificado. Esta excepción y IOException se detectan y se convierten en un diagnóstico de emisión. Se pasan otras excepciones.
- localSignatureProvider
- Func<MethodDefinitionHandle,StandaloneSignatureHandle>
Una función que para un identificador de método devuelve la firma de sus variables locales. La función iniciará InvalidDataException si la información no se puede leer para el método especificado. Esta excepción y IOException se detectan y se convierten en un diagnóstico de emisión. Se pasan otras excepciones.
- hasPortableDebugInformation
- Boolean
True si la base de referencia PDB es portátil.
Devoluciones
para EmitBaseline el módulo.
- Atributos
Excepciones
localSignatureProvider
es null.
Error al leer los metadatos del módulo.
Los metadatos del módulo no son válidos.
Se ha eliminado el módulo.
Comentarios
Solo se crea la línea base inicial con este método; Las líneas base posteriores se crean automáticamente al emitir las diferencias en compilaciones posteriores.
Cuando se actualiza un método activo (uno para el que se asigna un marco en una pila) se actualizan los valores de sus variables locales. La asignación de nombres de variables locales a sus ranuras en el marco no se incluye en los metadatos y, por tanto, debe proporcionarse mediante debugInformationProvider
.
Solo debugInformationProvider
es necesario para la generación inicial. La asignación de las generaciones posteriores se transfiere a través de EmitBaseline. El compilador asigna ranuras a variables locales con nombre (incluidas las variables temporales con nombre) en el orden en que aparecen en el código fuente. Esta propiedad permite al compilador reconstruir la asignación de variables locales para la generación inicial. Una generación posterior puede agregar una nueva variable entre dos variables de la generación anterior. Puesto que las ranuras de las variables de generación anterior deben conservarse, la única opción es agregar estas nuevas variables al final. El orden de ranuras ya no coincide con el orden de sintaxis. Por lo tanto, es necesario pasar Baseline a la próxima generación (en lugar de, por ejemplo, crear nuevos nuevos EmitBaselinedesde cero en función de los metadatos generados por compilaciones posteriores).
Se aplica a
CreateInitialBaseline(Compilation, ModuleMetadata, Func<MethodDefinitionHandle, EditAndContinueMethodDebugInformation>, Func<MethodDefinitionHandle, StandaloneSignatureHandle>, Boolean)
- Source:
- EmitBaseline.cs
Crea un EmitBaseline objeto a partir de los metadatos del módulo antes de editar y desde una función que se asigna desde un método a una matriz de nombres locales.
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
Parámetros
- compilation
- Compilation
Inicial Microsoft.CodeAnalysis.Emit.EmitBaseline.Compilation.
- module
- ModuleMetadata
Metadatos del módulo antes de editarlos.
- debugInformationProvider
- Func<MethodDefinitionHandle,EditAndContinueMethodDebugInformation>
Una función que para un identificador de método devuelve la información de edición y continuación de depuración emitida por el compilador en PDB. La función iniciará InvalidDataException si la información de depuración no se puede leer para el método especificado. Esta excepción y IOException se detectan y se convierten en un diagnóstico de emisión. Se pasan otras excepciones.
- localSignatureProvider
- Func<MethodDefinitionHandle,StandaloneSignatureHandle>
Una función que para un identificador de método devuelve la firma de sus variables locales. La función iniciará InvalidDataException si la información no se puede leer para el método especificado. Esta excepción y IOException se detectan y se convierten en un diagnóstico de emisión. Se pasan otras excepciones.
- hasPortableDebugInformation
- Boolean
True si la base de referencia PDB es portátil.
Devoluciones
para EmitBaseline el módulo.
Excepciones
localSignatureProvider
es null.
Error al leer los metadatos del módulo.
Los metadatos del módulo no son válidos.
Se ha eliminado el módulo.
Comentarios
Solo se crea la línea base inicial con este método; Las líneas base posteriores se crean automáticamente al emitir las diferencias en compilaciones posteriores.
Cuando se actualiza un método activo (uno para el que se asigna un marco en una pila) se actualizan los valores de sus variables locales. La asignación de nombres de variables locales a sus ranuras en el marco no se incluye en los metadatos y, por tanto, debe proporcionarse mediante debugInformationProvider
.
Solo debugInformationProvider
es necesario para la generación inicial. La asignación de las generaciones posteriores se transfiere a través de EmitBaseline. El compilador asigna ranuras a variables locales con nombre (incluidas las variables temporales con nombre) en el orden en que aparecen en el código fuente. Esta propiedad permite al compilador reconstruir la asignación de variables locales para la generación inicial. Una generación posterior puede agregar una nueva variable entre dos variables de la generación anterior. Puesto que las ranuras de las variables de generación anterior deben conservarse, la única opción es agregar estas nuevas variables al final. El orden de ranuras ya no coincide con el orden de sintaxis. Por lo tanto, es necesario pasar Baseline a la próxima generación (en lugar de, por ejemplo, crear nuevos nuevos EmitBaselinedesde cero en función de los metadatos generados por compilaciones posteriores).