Freigeben über


CodeGenerator Klasse

Definition

Stellt eine Beispielimplementierung der ICodeGenerator Schnittstelle bereit. Diese Klasse ist abstrakt.

public ref class CodeGenerator abstract : System::CodeDom::Compiler::ICodeGenerator
public abstract class CodeGenerator : System.CodeDom.Compiler.ICodeGenerator
type CodeGenerator = class
    interface ICodeGenerator
Public MustInherit Class CodeGenerator
Implements ICodeGenerator
Vererbung
CodeGenerator
Abgeleitet
Implementiert

Hinweise

Dies ist eine nützliche Basisklasse für Codegeneratoren, von denen abgeleitet werden soll. Codegeneratoren können Quellcode in einer bestimmten Sprache gemäß der Struktur eines Code Document Object Model (CodeDOM)-Diagramms rendern. Diese Klasse stellt viele Funktionen und Methoden bereit, um bestimmte Codetypen aus einem CodeDOM-Diagramm zu generieren.

Hinweis

Diese Klasse enthält einen Link-Bedarf und einen Vererbungsbedarf auf Klassenebene, der für alle Mitglieder gilt. Ein SecurityException wird ausgelöst, wenn entweder der unmittelbare Aufrufer oder die abgeleitete Klasse nicht über die Berechtigung zur vollen Vertrauenswürdigkeit verfügt. Ausführliche Informationen zu Sicherheitsanforderungen finden Sie unter Linkanforderungen.

Konstruktoren

Name Beschreibung
CodeGenerator()

Initialisiert eine neue Instanz der CodeGenerator-Klasse.

Eigenschaften

Name Beschreibung
CurrentClass

Ruft die Codetypdeklaration für die aktuelle Klasse ab.

CurrentMember

Ruft das aktuelle Element der Klasse ab.

CurrentMemberName

Ruft den aktuellen Membernamen ab.

CurrentTypeName

Ruft den aktuellen Klassennamen ab.

Indent

Ruft die Anzahl der Leerzeichen ab, die jeder Einzugsebene eingezogen werden sollen, oder legt diese fest.

IsCurrentClass

Ruft einen Wert ab, der angibt, ob das aktuelle Objekt, das generiert wird, eine Klasse ist.

IsCurrentDelegate

Ruft einen Wert ab, der angibt, ob das aktuelle Objekt generiert wird, ein Delegat ist.

IsCurrentEnum

Ruft einen Wert ab, der angibt, ob das aktuelle Objekt generiert wird, eine Enumeration ist.

IsCurrentInterface

Ruft einen Wert ab, der angibt, ob das aktuelle Objekt, das generiert wird, eine Schnittstelle ist.

IsCurrentStruct

Ruft einen Wert ab, der angibt, ob das aktuelle Objekt generiert wird, ein Werttyp oder eine Struktur ist.

NullToken

Ruft das Token ab, das darstellt null.

Options

Ruft die Optionen ab, die vom Codegenerator verwendet werden sollen.

Output

Ruft den Textschreiber ab, der für die Ausgabe verwendet werden soll.

Methoden

Name Beschreibung
ContinueOnNewLine(String)

Generiert ein Zeilenfortsetzungszeichen und gibt die angegebene Zeichenfolge in einer neuen Zeile aus.

CreateEscapedIdentifier(String)

Erstellt einen Escapebezeichner für den angegebenen Wert.

CreateValidIdentifier(String)

Erstellt einen gültigen Bezeichner für den angegebenen Wert.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GenerateArgumentReferenceExpression(CodeArgumentReferenceExpression)

Generiert Code für den angegebenen Argumentverweisausdruck.

GenerateArrayCreateExpression(CodeArrayCreateExpression)

Generiert Code für den angegebenen Arrayerstellungsausdruck.

GenerateArrayIndexerExpression(CodeArrayIndexerExpression)

Generiert Code für den angegebenen Arrayindexerausdruck.

GenerateAssignStatement(CodeAssignStatement)

Generiert Code für die angegebene Zuordnungsanweisung.

GenerateAttachEventStatement(CodeAttachEventStatement)

Generiert Code für die angegebene Attach-Ereignisanweisung.

GenerateAttributeDeclarationsEnd(CodeAttributeDeclarationCollection)

Generiert Code für das angegebene Attributblockende.

GenerateAttributeDeclarationsStart(CodeAttributeDeclarationCollection)

Generiert Code für den angegebenen Attributblockstart.

GenerateBaseReferenceExpression(CodeBaseReferenceExpression)

Generiert Code für den angegebenen Basisverweisausdruck.

GenerateBinaryOperatorExpression(CodeBinaryOperatorExpression)

Generiert Code für den angegebenen Binären Operatorausdruck.

GenerateCastExpression(CodeCastExpression)

Generiert Code für den angegebenen Umwandlungsausdruck.

GenerateCodeFromMember(CodeTypeMember, TextWriter, CodeGeneratorOptions)

Generiert Code für das angegebene Klassenelement mithilfe der angegebenen Textschreiber- und Codegeneratoroptionen.

GenerateComment(CodeComment)

Generiert Code für den angegebenen Kommentar.

GenerateCommentStatement(CodeCommentStatement)

Generiert Code für die angegebene Kommentar-Anweisung.

GenerateCommentStatements(CodeCommentStatementCollection)

Generiert Code für die angegebenen Kommentaranweisungen.

GenerateCompileUnit(CodeCompileUnit)

Generiert Code für die angegebene Kompilierungseinheit.

GenerateCompileUnitEnd(CodeCompileUnit)

Generiert Code für das Ende einer Kompilierungseinheit.

GenerateCompileUnitStart(CodeCompileUnit)

Generiert Code für den Anfang einer Kompilierungseinheit.

GenerateConditionStatement(CodeConditionStatement)

Generiert Code für die angegebene bedingte Anweisung.

GenerateConstructor(CodeConstructor, CodeTypeDeclaration)

Generiert Code für den angegebenen Konstruktor.

GenerateDecimalValue(Decimal)

Generiert Code für den angegebenen Dezimalwert.

GenerateDefaultValueExpression(CodeDefaultValueExpression)

Generiert Code für den angegebenen Verweis auf einen Standardwert.

GenerateDelegateCreateExpression(CodeDelegateCreateExpression)

Generiert Code für den angegebenen Stellvertretungserstellungsausdruck.

GenerateDelegateInvokeExpression(CodeDelegateInvokeExpression)

Generiert Code für den angegebenen Stellvertretungs-Aufrufausdruck.

GenerateDirectionExpression(CodeDirectionExpression)

Generiert Code für den angegebenen Richtungsausdruck.

GenerateDirectives(CodeDirectiveCollection)

Generiert Code für die angegebenen Codedirektiven.

GenerateDoubleValue(Double)

Generiert Code für eine Gleitkommazahl mit doppelter Genauigkeit.

GenerateEntryPointMethod(CodeEntryPointMethod, CodeTypeDeclaration)

Generiert Code für die angegebene Einstiegspunktmethode.

GenerateEvent(CodeMemberEvent, CodeTypeDeclaration)

Generiert Code für das angegebene Ereignis.

GenerateEventReferenceExpression(CodeEventReferenceExpression)

Generiert Code für den angegebenen Ereignisverweisausdruck.

GenerateExpression(CodeExpression)

Generiert Code für den angegebenen Codeausdruck.

GenerateExpressionStatement(CodeExpressionStatement)

Generiert Code für die angegebene Ausdrucksanweisung.

GenerateField(CodeMemberField)

Generiert Code für das angegebene Elementfeld.

GenerateFieldReferenceExpression(CodeFieldReferenceExpression)

Generiert Code für den angegebenen Feldverweisausdruck.

GenerateGotoStatement(CodeGotoStatement)

Generiert Code für die angegebene goto Anweisung.

GenerateIndexerExpression(CodeIndexerExpression)

Generiert Code für den angegebenen Indexerausdruck.

GenerateIterationStatement(CodeIterationStatement)

Generiert Code für die angegebene Iterationsanweisung.

GenerateLabeledStatement(CodeLabeledStatement)

Generiert Code für die angegebene beschriftete Anweisung.

GenerateLinePragmaEnd(CodeLinePragma)

Generiert Code für das angegebene Zeilen pragma-Ende.

GenerateLinePragmaStart(CodeLinePragma)

Generiert Code für den angegebenen Zeilen pragma-Start.

GenerateMethod(CodeMemberMethod, CodeTypeDeclaration)

Generiert Code für die angegebene Methode.

GenerateMethodInvokeExpression(CodeMethodInvokeExpression)

Generiert Code für den angegebenen Methodenaufrufausdruck.

GenerateMethodReferenceExpression(CodeMethodReferenceExpression)

Generiert Code für den angegebenen Methodenverweisausdruck.

GenerateMethodReturnStatement(CodeMethodReturnStatement)

Generiert Code für die angegebene Methodenrückgabe-Anweisung.

GenerateNamespace(CodeNamespace)

Generiert Code für den angegebenen Namespace.

GenerateNamespaceEnd(CodeNamespace)

Generiert Code für das Ende eines Namespaces.

GenerateNamespaceImport(CodeNamespaceImport)

Generiert Code für den angegebenen Namespaceimport.

GenerateNamespaceImports(CodeNamespace)

Generiert Code für den angegebenen Namespaceimport.

GenerateNamespaces(CodeCompileUnit)

Generiert Code für die Namespaces in der angegebenen Kompilierungseinheit.

GenerateNamespaceStart(CodeNamespace)

Generiert Code für den Anfang eines Namespaces.

GenerateObjectCreateExpression(CodeObjectCreateExpression)

Generiert Code für den angegebenen Objekterstellungsausdruck.

GenerateParameterDeclarationExpression(CodeParameterDeclarationExpression)

Generiert Code für den angegebenen Parameterdeklarationsausdruck.

GeneratePrimitiveExpression(CodePrimitiveExpression)

Generiert Code für den angegebenen Grundtypausdruck.

GenerateProperty(CodeMemberProperty, CodeTypeDeclaration)

Generiert Code für die angegebene Eigenschaft.

GeneratePropertyReferenceExpression(CodePropertyReferenceExpression)

Generiert Code für den angegebenen Eigenschaftsverweisausdruck.

GeneratePropertySetValueReferenceExpression(CodePropertySetValueReferenceExpression)

Generiert Code für den angegebenen Eigenschaftssatz-Wertverweisausdruck.

GenerateRemoveEventStatement(CodeRemoveEventStatement)

Generiert Code für die angegebene Remove-Ereignis-Anweisung.

GenerateSingleFloatValue(Single)

Generiert Code für eine Gleitkommazahl mit einfacher Genauigkeit.

GenerateSnippetCompileUnit(CodeSnippetCompileUnit)

Gibt den Code der angegebenen Kompilierungseinheit des Literalcodes aus.

GenerateSnippetExpression(CodeSnippetExpression)

Gibt den Code des angegebenen Literalcodefragmentausdrucks aus.

GenerateSnippetMember(CodeSnippetTypeMember)

Gibt den Code des angegebenen Literalcodefragmentklassenelements aus.

GenerateSnippetStatement(CodeSnippetStatement)

Gibt den Code der angegebenen Literalcodefragment-Anweisung aus.

GenerateStatement(CodeStatement)

Generiert Code für die angegebene Anweisung.

GenerateStatements(CodeStatementCollection)

Generiert Code für die angegebene Anweisungsauflistung.

GenerateThisReferenceExpression(CodeThisReferenceExpression)

Generiert Code für den angegebenen Verweisausdruck.

GenerateThrowExceptionStatement(CodeThrowExceptionStatement)

Generiert Code für die angegebene Auslösenausnahme-Anweisung.

GenerateTryCatchFinallyStatement(CodeTryCatchFinallyStatement)

Generiert Code für die angegebene try-catch-finally Anweisung.

GenerateTypeConstructor(CodeTypeConstructor)

Generiert Code für den angegebenen Klassenkonstruktor.

GenerateTypeEnd(CodeTypeDeclaration)

Generiert Code für das angegebene Ende der Klasse.

GenerateTypeOfExpression(CodeTypeOfExpression)

Generiert Code für den angegebenen Ausdruckstyp.

GenerateTypeReferenceExpression(CodeTypeReferenceExpression)

Generiert Code für den angegebenen Typverweisausdruck.

GenerateTypes(CodeNamespace)

Generiert Code für den angegebenen Namespace und die darin enthaltenen Klassen.

GenerateTypeStart(CodeTypeDeclaration)

Generiert Code für den angegebenen Anfang der Klasse.

GenerateVariableDeclarationStatement(CodeVariableDeclarationStatement)

Generiert Code für die angegebene Variablendeklarationsanweisung.

GenerateVariableReferenceExpression(CodeVariableReferenceExpression)

Generiert Code für den angegebenen Variablenverweisausdruck.

GetHashCode()

Dient als die Standard-Hashfunktion

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
GetTypeOutput(CodeTypeReference)

Ruft den Namen des angegebenen Datentyps ab.

IsValidIdentifier(String)

Ruft einen Wert ab, der angibt, ob der angegebene Wert ein gültiger Bezeichner ist.

IsValidLanguageIndependentIdentifier(String)

Ruft einen Wert ab, der angibt, ob die angegebene Zeichenfolge ein gültiger Bezeichner ist.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
OutputAttributeArgument(CodeAttributeArgument)

Gibt ein Argument in einem Attributblock aus.

OutputAttributeDeclarations(CodeAttributeDeclarationCollection)

Generiert Code für die angegebene Attributdeklarationsauflistung.

OutputDirection(FieldDirection)

Generiert Code für den angegebenen FieldDirection.

OutputExpressionList(CodeExpressionCollection, Boolean)

Generiert Code für die angegebene Ausdrucksliste.

OutputExpressionList(CodeExpressionCollection)

Generiert Code für die angegebene Ausdrucksliste.

OutputFieldScopeModifier(MemberAttributes)

Gibt einen Feldbereichsmodifizierer aus, der den angegebenen Attributen entspricht.

OutputIdentifier(String)

Gibt den angegebenen Bezeichner aus.

OutputMemberAccessModifier(MemberAttributes)

Generiert Code für den angegebenen Memberzugriffsmodifizierer.

OutputMemberScopeModifier(MemberAttributes)

Generiert Code für den angegebenen Memberbereichsmodifizierer.

OutputOperator(CodeBinaryOperatorType)

Generiert Code für den angegebenen Operator.

OutputParameters(CodeParameterDeclarationExpressionCollection)

Generiert Code für die angegebenen Parameter.

OutputType(CodeTypeReference)

Generiert Code für den angegebenen Typ.

OutputTypeAttributes(TypeAttributes, Boolean, Boolean)

Generiert Code für die angegebenen Typattribute.

OutputTypeNamePair(CodeTypeReference, String)

Generiert Code für den angegebenen Objekttyp und das Namenspaar.

QuoteSnippetString(String)

Konvertiert die angegebene Zeichenfolge durch Formatierung mit Escapecodes.

Supports(GeneratorSupport)

Ruft einen Wert ab, der angibt, ob die unterstützung der angegebenen Codegenerierung bereitgestellt wird.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
ValidateIdentifier(String)

Löst eine Ausnahme aus, wenn die angegebene Zeichenfolge kein gültiger Bezeichner ist.

ValidateIdentifiers(CodeObject)

Es wird versucht, jedes in der angegebenen oder System.CodeDom der Struktur CodeObject enthaltene Bezeichnerfeld zu überprüfen.

Explizite Schnittstellenimplementierungen

Name Beschreibung
ICodeGenerator.CreateEscapedIdentifier(String)

Erstellt einen Escapebezeichner für den angegebenen Wert.

ICodeGenerator.CreateValidIdentifier(String)

Erstellt einen gültigen Bezeichner für den angegebenen Wert.

ICodeGenerator.GenerateCodeFromCompileUnit(CodeCompileUnit, TextWriter, CodeGeneratorOptions)

Generiert Code für die angegebene Code Document Object Model (CodeDOM)-Kompilierungseinheit und gibt ihn mithilfe der angegebenen Optionen an den angegebenen Textschreiber aus.

ICodeGenerator.GenerateCodeFromExpression(CodeExpression, TextWriter, CodeGeneratorOptions)

Generiert Code für den angegebenen Code Document Object Model (CodeDOM)-Ausdruck und gibt ihn an den angegebenen Text writer aus.

ICodeGenerator.GenerateCodeFromNamespace(CodeNamespace, TextWriter, CodeGeneratorOptions)

Generiert Code für den angegebenen Code Document Object Model (CodeDOM)-Namespace und gibt ihn mithilfe der angegebenen Optionen an den angegebenen Textschreiber aus.

ICodeGenerator.GenerateCodeFromStatement(CodeStatement, TextWriter, CodeGeneratorOptions)

Generiert Code für die angegebene Code Document Object Model (CodeDOM)-Anweisung und gibt ihn mithilfe der angegebenen Optionen an den angegebenen Textschreiber aus.

ICodeGenerator.GenerateCodeFromType(CodeTypeDeclaration, TextWriter, CodeGeneratorOptions)

Generiert Code für die angegebene Code Document Object Model (CodeDOM)-Typdeklaration und gibt ihn mithilfe der angegebenen Optionen an den angegebenen Textschreiber aus.

ICodeGenerator.GetTypeOutput(CodeTypeReference)

Ruft den Typ ab, der durch die angegebene .CodeTypeReference

ICodeGenerator.IsValidIdentifier(String)

Ruft einen Wert ab, der angibt, ob der angegebene Wert ein gültiger Bezeichner für die aktuelle Sprache ist.

ICodeGenerator.Supports(GeneratorSupport)

Ruft einen Wert ab, der angibt, ob der Generator Unterstützung für die sprachfeatures bereitstellt, die durch das angegebene GeneratorSupport Objekt dargestellt werden.

ICodeGenerator.ValidateIdentifier(String)

Löst eine Ausnahme aus, wenn der angegebene Wert kein gültiger Bezeichner ist.

Gilt für:

Weitere Informationen