CodeGenerator 類別

定義

提供 ICodeGenerator 介面的範例實作。 這個類別是抽象的。

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
繼承
CodeGenerator
衍生
實作

備註

這是程式碼產生器衍生自的實用基類。 程式碼產生器可以根據程式碼檔物件模型的結構,以特定語言轉譯原始程式碼, (CodeDOM) 圖表。 這個類別提供許多函式和方法,可從 CodeDOM 圖形產生特定類型的程式碼。

注意

此類別包含適用于所有成員之類別層級的連結需求和繼承需求。 SecurityException當立即呼叫端或衍生類別沒有完全信任許可權時,就會擲回 。 如需安全性需求的詳細資訊,請參閱 連結需求繼承需求

建構函式

CodeGenerator()

初始化 CodeGenerator 類別的新執行個體。

屬性

CurrentClass

取得目前類別的程式碼類型宣告。

CurrentMember

取得類別的目前成員。

CurrentMemberName

取得目前成員名稱。

CurrentTypeName

取得目前類別的名稱。

Indent

取得或設定縮排每個縮排層次的空格數量。

IsCurrentClass

取得值,指出目前產生的物件是否為類別。

IsCurrentDelegate

取得值,指出目前產生的物件是否為委派。

IsCurrentEnum

取得值,指出目前產生的物件是否為列舉型別 (Enumeration)。

IsCurrentInterface

取得值,指出目前產生的物件是否為介面。

IsCurrentStruct

取得值,指出目前產生的物件是否為實值型別 (Value Type) 或結構。

NullToken

取得表示 null 的語彙基元 (Token)。

Options

取得程式碼產生器使用的選項。

Output

取得要用於輸出的文字寫入器。

方法

ContinueOnNewLine(String)

產生行接續字元 (Line-Continuation Character),並將指定字串輸出到新行上。

CreateEscapedIdentifier(String)

為指定值建立逸出識別項。

CreateValidIdentifier(String)

為指定值建立有效的識別項。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GenerateArgumentReferenceExpression(CodeArgumentReferenceExpression)

為指定的引數參考運算式產生程式碼。

GenerateArrayCreateExpression(CodeArrayCreateExpression)

為指定的陣列建立運算式產生程式碼。

GenerateArrayIndexerExpression(CodeArrayIndexerExpression)

為指定的陣列索引子運算式產生程式碼。

GenerateAssignStatement(CodeAssignStatement)

為指定的指派陳述式 (Assignment Statement) 產生程式碼。

GenerateAttachEventStatement(CodeAttachEventStatement)

為指定的附加事件陳述式產生程式碼。

GenerateAttributeDeclarationsEnd(CodeAttributeDeclarationCollection)

為指定的屬性區塊結尾產生程式碼。

GenerateAttributeDeclarationsStart(CodeAttributeDeclarationCollection)

為指定的屬性區塊起始產生程式碼。

GenerateBaseReferenceExpression(CodeBaseReferenceExpression)

為指定的基底參考運算式產生程式碼。

GenerateBinaryOperatorExpression(CodeBinaryOperatorExpression)

為指定的二元運算子運算式產生程式碼。

GenerateCastExpression(CodeCastExpression)

為指定的型別轉換運算式產生程式碼。

GenerateCodeFromMember(CodeTypeMember, TextWriter, CodeGeneratorOptions)

使用指定的文字寫入器與程式碼產生器選項,產生指定類別成員的程式碼。

GenerateComment(CodeComment)

為指定的註解產生程式碼。

GenerateCommentStatement(CodeCommentStatement)

為指定的註解陳述式產生程式碼。

GenerateCommentStatements(CodeCommentStatementCollection)

為指定的註解陳述式產生程式碼。

GenerateCompileUnit(CodeCompileUnit)

為指定的編譯單位產生程式碼。

GenerateCompileUnitEnd(CodeCompileUnit)

為編譯單位的結尾產生程式碼。

GenerateCompileUnitStart(CodeCompileUnit)

為編譯單位的起始產生程式碼。

GenerateConditionStatement(CodeConditionStatement)

為指定的條件陳述式產生程式碼。

GenerateConstructor(CodeConstructor, CodeTypeDeclaration)

為指定的建構函式 (Constructor) 產生程式碼。

GenerateDecimalValue(Decimal)

為指定的十進位值產生程式碼。

GenerateDefaultValueExpression(CodeDefaultValueExpression)

為指定的預設值參考產生程式碼。

GenerateDelegateCreateExpression(CodeDelegateCreateExpression)

為指定的委派建立運算式產生程式碼。

GenerateDelegateInvokeExpression(CodeDelegateInvokeExpression)

為指定的委派叫用 (Invoke) 運算式產生程式碼。

GenerateDirectionExpression(CodeDirectionExpression)

為指定的方向運算式產生程式碼。

GenerateDirectives(CodeDirectiveCollection)

為指定的程式碼指示詞產生程式碼。

GenerateDoubleValue(Double)

為雙精確度浮點數產生程式碼。

GenerateEntryPointMethod(CodeEntryPointMethod, CodeTypeDeclaration)

為指定的進入點 (Entry Point) 方法產生程式碼。

GenerateEvent(CodeMemberEvent, CodeTypeDeclaration)

為指定的事件產生程式碼。

GenerateEventReferenceExpression(CodeEventReferenceExpression)

為指定的事件參考運算式產生程式碼。

GenerateExpression(CodeExpression)

為指定的程式碼運算式產生程式碼。

GenerateExpressionStatement(CodeExpressionStatement)

為指定的運算式陳述式產生程式碼。

GenerateField(CodeMemberField)

為指定的成員欄位產生程式碼。

GenerateFieldReferenceExpression(CodeFieldReferenceExpression)

為指定的欄位參考運算式產生程式碼。

GenerateGotoStatement(CodeGotoStatement)

為指定的 goto 陳述式產生程式碼。

GenerateIndexerExpression(CodeIndexerExpression)

為指定的索引子運算式產生程式碼。

GenerateIterationStatement(CodeIterationStatement)

為指定的重複陳述式產生程式碼。

GenerateLabeledStatement(CodeLabeledStatement)

為指定的標記陳述式 (Labeled Statement) 產生程式碼。

GenerateLinePragmaEnd(CodeLinePragma)

為指定的行 Pragma 結尾產生程式碼。

GenerateLinePragmaStart(CodeLinePragma)

為指定的行 Pragma 起始產生程式碼。

GenerateMethod(CodeMemberMethod, CodeTypeDeclaration)

為指定的方法產生程式碼。

GenerateMethodInvokeExpression(CodeMethodInvokeExpression)

為指定的方法叫用運算式產生程式碼。

GenerateMethodReferenceExpression(CodeMethodReferenceExpression)

為指定的方法參考運算式產生程式碼。

GenerateMethodReturnStatement(CodeMethodReturnStatement)

為指定的方法傳回陳述式產生程式碼。

GenerateNamespace(CodeNamespace)

為指定的命名空間 (Namespace) 產生程式碼。

GenerateNamespaceEnd(CodeNamespace)

為命名空間的結尾產生程式碼。

GenerateNamespaceImport(CodeNamespaceImport)

為指定的命名空間匯入產生程式碼。

GenerateNamespaceImports(CodeNamespace)

為指定的命名空間匯入產生程式碼。

GenerateNamespaces(CodeCompileUnit)

為指定編譯單位中的命名空間產生程式碼。

GenerateNamespaceStart(CodeNamespace)

為命名空間的起始產生程式碼。

GenerateObjectCreateExpression(CodeObjectCreateExpression)

為指定的物件建立運算式產生程式碼。

GenerateParameterDeclarationExpression(CodeParameterDeclarationExpression)

為指定的參數宣告運算式產生程式碼。

GeneratePrimitiveExpression(CodePrimitiveExpression)

為指定的原始運算式產生程式碼。

GenerateProperty(CodeMemberProperty, CodeTypeDeclaration)

為指定的屬性產生程式碼。

GeneratePropertyReferenceExpression(CodePropertyReferenceExpression)

為指定的屬性參考運算式產生程式碼。

GeneratePropertySetValueReferenceExpression(CodePropertySetValueReferenceExpression)

為指定的屬性集 (Property Set) 數值參考運算式產生程式碼。

GenerateRemoveEventStatement(CodeRemoveEventStatement)

為指定的移除事件陳述式產生程式碼。

GenerateSingleFloatValue(Single)

為單精確度浮點數產生程式碼。

GenerateSnippetCompileUnit(CodeSnippetCompileUnit)

輸出指定常值程式碼片段編譯單位的程式碼。

GenerateSnippetExpression(CodeSnippetExpression)

輸出指定常值程式碼片段運算式的程式碼。

GenerateSnippetMember(CodeSnippetTypeMember)

輸出指定常值程式碼片段類別成員的程式碼。

GenerateSnippetStatement(CodeSnippetStatement)

輸出指定常值程式碼片段陳述式的程式碼。

GenerateStatement(CodeStatement)

為指定的陳述式產生程式碼。

GenerateStatements(CodeStatementCollection)

為指定的陳述式集合產生程式碼。

GenerateThisReferenceExpression(CodeThisReferenceExpression)

為指定的 this 參考運算式產生程式碼。

GenerateThrowExceptionStatement(CodeThrowExceptionStatement)

為指定的擲回例外狀況 (Exception) 陳述式產生程式碼。

GenerateTryCatchFinallyStatement(CodeTryCatchFinallyStatement)

為指定的 try-catch-finally 陳述式產生程式碼。

GenerateTypeConstructor(CodeTypeConstructor)

為指定的類別建構函式產生程式碼。

GenerateTypeEnd(CodeTypeDeclaration)

為指定的類別結尾產生程式碼。

GenerateTypeOfExpression(CodeTypeOfExpression)

為指定的運算式型別產生程式碼。

GenerateTypeReferenceExpression(CodeTypeReferenceExpression)

為指定的型別參考運算式產生程式碼。

GenerateTypes(CodeNamespace)

為指定的命名空間和其所包含的類別產生程式碼。

GenerateTypeStart(CodeTypeDeclaration)

為指定的類別開頭產生程式碼。

GenerateVariableDeclarationStatement(CodeVariableDeclarationStatement)

為指定的變數宣告陳述式產生程式碼。

GenerateVariableReferenceExpression(CodeVariableReferenceExpression)

為指定的變數參考運算式產生程式碼。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
GetTypeOutput(CodeTypeReference)

取得指定資料型別的名稱。

IsValidIdentifier(String)

取得值,指出指定值是否為有效的識別項。

IsValidLanguageIndependentIdentifier(String)

取得一個數值,指出指定值是否為有效識別項。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OutputAttributeArgument(CodeAttributeArgument)

輸出屬性區塊中的引數。

OutputAttributeDeclarations(CodeAttributeDeclarationCollection)

為指定的屬性宣告集合產生程式碼。

OutputDirection(FieldDirection)

為指定的 FieldDirection 產生程式碼。

OutputExpressionList(CodeExpressionCollection)

為指定的運算式清單產生程式碼。

OutputExpressionList(CodeExpressionCollection, Boolean)

為指定的運算式清單產生程式碼。

OutputFieldScopeModifier(MemberAttributes)

輸出對應於指定屬性的欄位範圍修飾詞 (Modifier)。

OutputIdentifier(String)

輸出指定的識別項。

OutputMemberAccessModifier(MemberAttributes)

為指定的成員存取修飾詞產生程式碼。

OutputMemberScopeModifier(MemberAttributes)

為指定的成員範圍修飾詞產生程式碼。

OutputOperator(CodeBinaryOperatorType)

為指定的運算子產生程式碼。

OutputParameters(CodeParameterDeclarationExpressionCollection)

為指定的參數產生程式碼。

OutputType(CodeTypeReference)

為指定的型別產生程式碼。

OutputTypeAttributes(TypeAttributes, Boolean, Boolean)

為指定的型別屬性產生程式碼。

OutputTypeNamePair(CodeTypeReference, String)

為指定的物件型別和名稱配對產生程式碼。

QuoteSnippetString(String)

以逸出程式碼格式化,以轉換指定的字串。

Supports(GeneratorSupport)

取得值,指出是否提供指定程式碼產生支援。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)
ValidateIdentifier(String)

如果指定字串不是有效的識別項,即擲回例外狀況。

ValidateIdentifiers(CodeObject)

嘗試驗證指定 CodeObjectSystem.CodeDom 樹狀結構中所包含的每個識別項欄位。

明確介面實作

ICodeGenerator.CreateEscapedIdentifier(String)

為指定值建立逸出識別項。

ICodeGenerator.CreateValidIdentifier(String)

為指定值建立有效的識別項。

ICodeGenerator.GenerateCodeFromCompileUnit(CodeCompileUnit, TextWriter, CodeGeneratorOptions)

為指定的程式碼文件物件模型 (CodeDOM) 編譯單位產生程式碼,並使用指定的選項將它輸出到指定的文字寫入器。

ICodeGenerator.GenerateCodeFromExpression(CodeExpression, TextWriter, CodeGeneratorOptions)

為指定的程式碼文件物件模型 (CodeDOM) 運算式產生程式碼,並將它輸出到指定的文字寫入器。

ICodeGenerator.GenerateCodeFromNamespace(CodeNamespace, TextWriter, CodeGeneratorOptions)

為指定的程式碼文件物件模型 (CodeDOM) 命名空間產生程式碼,並使用指定的選項將它輸出到指定的文字寫入器。

ICodeGenerator.GenerateCodeFromStatement(CodeStatement, TextWriter, CodeGeneratorOptions)

為指定的程式碼文件物件模型 (CodeDOM) 陳述式產生程式碼,並使用指定的選項將它輸出到指定的文字寫入器。

ICodeGenerator.GenerateCodeFromType(CodeTypeDeclaration, TextWriter, CodeGeneratorOptions)

為指定的程式碼文件物件模型 (CodeDOM) 型別宣告產生程式碼,並使用指定的選項將它輸出到指定的文字寫入器。

ICodeGenerator.GetTypeOutput(CodeTypeReference)

取得由指定的 CodeTypeReference 所指示的型別。

ICodeGenerator.IsValidIdentifier(String)

取得指示數值,表示指定的值是否為目前語言的有效識別項。

ICodeGenerator.Supports(GeneratorSupport)

取得值,指出產生器是否支援指定 GeneratorSupport 物件所表示的語言功能。

ICodeGenerator.ValidateIdentifier(String)

如果指定值不是有效的識別項會擲回例外狀況。

適用於

另請參閱