Share via


DslDirectiveProcessor Class

Double-derived template directive processor that provides Dsl files The implementation is done in DslDirectiveProcessorBase. This class exist so users can customize behavior easily.

Inheritance Hierarchy

System.Object
  Microsoft.VisualStudio.TextTemplating.DirectiveProcessor
    Microsoft.VisualStudio.TextTemplating.RequiresProvidesDirectiveProcessor
      Microsoft.VisualStudio.Modeling.DslDefinition.DslDirectiveProcessorBase
        Microsoft.VisualStudio.Modeling.DslDefinition.DslDirectiveProcessor

Namespace:  Microsoft.VisualStudio.Modeling.DslDefinition
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.12.0.dll)

Syntax

'Declaration
Public NotInheritable Class DslDirectiveProcessor _
    Inherits DslDirectiveProcessorBase
public sealed class DslDirectiveProcessor : DslDirectiveProcessorBase
public ref class DslDirectiveProcessor sealed : public DslDirectiveProcessorBase
[<Sealed>]
type DslDirectiveProcessor =  
    class 
        inherit DslDirectiveProcessorBase 
    end
public final class DslDirectiveProcessor extends DslDirectiveProcessorBase

The DslDirectiveProcessor type exposes the following members.

Constructors

  Name Description
Public method DslDirectiveProcessor Constructor

Top

Methods

  Name Description
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public method FinishProcessingRun (Inherited from RequiresProvidesDirectiveProcessor.)
Public method GetClassCodeForProcessingRun (Inherited from RequiresProvidesDirectiveProcessor.)
Public method GetHashCode Serves as the default hash function. (Inherited from Object.)
Public method GetImportsForProcessingRun Return namespace imports necessary for running template (Inherited from DslDirectiveProcessorBase.)
Public method GetPostInitializationCodeForProcessingRun Override GetPostInitializationCodeForProcessingRun to surround all file loads with a top-level transaction. We do this so that the moniker cache does not get flushed after each file is loaded, so that cross-model monikers can be resolved by loading both models in T4 using directives. (Overrides RequiresProvidesDirectiveProcessor.GetPostInitializationCodeForProcessingRun().)
Public method GetPreInitializationCodeForProcessingRun (Inherited from RequiresProvidesDirectiveProcessor.)
Public method GetReferencesForProcessingRun Get assembly references needed for running template (Inherited from DslDirectiveProcessorBase.)
Public method GetTemplateClassCustomAttributes (Inherited from DirectiveProcessor.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method Initialize (Inherited from RequiresProvidesDirectiveProcessor.)
Public method IsDirectiveSupported Check if the directive name is supported by this directive processor (Inherited from DslDirectiveProcessorBase.)
Public method ProcessDirective (Inherited from RequiresProvidesDirectiveProcessor.)
Public method StartProcessingRun Override StartProcessingRun to get the reference to the CodeDomProvider (Overrides DslDirectiveProcessorBase.StartProcessingRun(CodeDomProvider, String, CompilerErrorCollection).)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate property IDirectiveProcessor.Errors (Inherited from DirectiveProcessor.)
Explicit interface implemetationPrivate property IDirectiveProcessor.RequiresProcessingRunIsHostSpecific (Inherited from DirectiveProcessor.)
Explicit interface implemetationPrivate method IDirectiveProcessor.SetProcessingRunIsHostSpecific (Inherited from DirectiveProcessor.)

Top

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

Microsoft.VisualStudio.Modeling.DslDefinition Namespace