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

获取一个值,该值指示正在生成的当前对象是否为枚举。

IsCurrentInterface

获取一个值,该值指示正在生成的当前对象是否为接口。

IsCurrentStruct

获取一个值,该值指示生成的当前对象是否为值类型或结构。

NullToken

获取表示 null 的标记。

Options

获取供代码生成器使用的选项。

Output

获取用于输出的文本编写器。

方法

ContinueOnNewLine(String)

生成行继续符并在新的一行上输出指定的字符串。

CreateEscapedIdentifier(String)

创建指定值的转义标识符。

CreateValidIdentifier(String)

为指定的值创建有效标识符。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GenerateArgumentReferenceExpression(CodeArgumentReferenceExpression)

为指定的参数引用表达式生成代码。

GenerateArrayCreateExpression(CodeArrayCreateExpression)

为指定的数组创建表达式生成代码。

GenerateArrayIndexerExpression(CodeArrayIndexerExpression)

为指定的数组索引器表达式生成代码。

GenerateAssignStatement(CodeAssignStatement)

为指定的赋值语句生成代码。

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)

为指定的构造函数生成代码。

GenerateDecimalValue(Decimal)

为指定的十进制值生成代码。

GenerateDefaultValueExpression(CodeDefaultValueExpression)

为对默认值的指定引用生成代码。

GenerateDelegateCreateExpression(CodeDelegateCreateExpression)

为指定的委托创建表达式生成代码。

GenerateDelegateInvokeExpression(CodeDelegateInvokeExpression)

为指定的委托调用表达式生成代码。

GenerateDirectionExpression(CodeDirectionExpression)

为指定的方向表达式生成代码。

GenerateDirectives(CodeDirectiveCollection)

为指定的代码指令生成代码。

GenerateDoubleValue(Double)

为双精度浮点数生成代码。

GenerateEntryPointMethod(CodeEntryPointMethod, CodeTypeDeclaration)

为指定的入口点方法生成代码。

GenerateEvent(CodeMemberEvent, CodeTypeDeclaration)

为指定的事件生成代码。

GenerateEventReferenceExpression(CodeEventReferenceExpression)

为指定的事件引用表达式生成代码。

GenerateExpression(CodeExpression)

为指定的代码表达式生成代码。

GenerateExpressionStatement(CodeExpressionStatement)

为指定的表达式语句生成代码。

GenerateField(CodeMemberField)

为指定的成员字段生成代码。

GenerateFieldReferenceExpression(CodeFieldReferenceExpression)

为指定的字段引用表达式生成代码。

GenerateGotoStatement(CodeGotoStatement)

为指定的 goto 语句生成代码。

GenerateIndexerExpression(CodeIndexerExpression)

为指定的索引器表达式生成代码。

GenerateIterationStatement(CodeIterationStatement)

为指定的迭代语句生成代码。

GenerateLabeledStatement(CodeLabeledStatement)

为指定的标记语句生成代码。

GenerateLinePragmaEnd(CodeLinePragma)

为指定的行杂注结尾生成代码。

GenerateLinePragmaStart(CodeLinePragma)

为指定的行杂注起始生成代码。

GenerateMethod(CodeMemberMethod, CodeTypeDeclaration)

为指定的方法生成代码。

GenerateMethodInvokeExpression(CodeMethodInvokeExpression)

为指定的方法调用表达式生成代码。

GenerateMethodReferenceExpression(CodeMethodReferenceExpression)

为指定的方法引用表达式生成代码。

GenerateMethodReturnStatement(CodeMethodReturnStatement)

为指定的方法返回语句生成代码。

GenerateNamespace(CodeNamespace)

为指定的命名空间生成代码。

GenerateNamespaceEnd(CodeNamespace)

为命名空间结尾生成代码。

GenerateNamespaceImport(CodeNamespaceImport)

为指定的命名空间导入生成代码。

GenerateNamespaceImports(CodeNamespace)

为指定的命名空间导入生成代码。

GenerateNamespaces(CodeCompileUnit)

为指定编译单元中的命名空间生成代码。

GenerateNamespaceStart(CodeNamespace)

为命名空间起始生成代码。

GenerateObjectCreateExpression(CodeObjectCreateExpression)

为指定的对象创建表达式生成代码。

GenerateParameterDeclarationExpression(CodeParameterDeclarationExpression)

为指定的参数声明表达式生成代码。

GeneratePrimitiveExpression(CodePrimitiveExpression)

为指定的基元表达式生成代码。

GenerateProperty(CodeMemberProperty, CodeTypeDeclaration)

为指定的属性生成代码。

GeneratePropertyReferenceExpression(CodePropertyReferenceExpression)

为指定的属性引用表达式生成代码。

GeneratePropertySetValueReferenceExpression(CodePropertySetValueReferenceExpression)

为指定的属性设置值引用表达式生成代码。

GenerateRemoveEventStatement(CodeRemoveEventStatement)

为指定的移除事件语句生成代码。

GenerateSingleFloatValue(Single)

为单精度浮点数生成代码。

GenerateSnippetCompileUnit(CodeSnippetCompileUnit)

输出指定的原义代码片段编译单元的代码。

GenerateSnippetExpression(CodeSnippetExpression)

输出指定的原义代码片段表达式的代码。

GenerateSnippetMember(CodeSnippetTypeMember)

输出指定的原义代码片段类成员的代码。

GenerateSnippetStatement(CodeSnippetStatement)

输出指定的原义代码片段语句的代码。

GenerateStatement(CodeStatement)

为指定的语句生成代码。

GenerateStatements(CodeStatementCollection)

为指定的语句集合生成代码。

GenerateThisReferenceExpression(CodeThisReferenceExpression)

为指定的引用表达式生成代码。

GenerateThrowExceptionStatement(CodeThrowExceptionStatement)

为指定的引发异常语句生成代码。

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)

输出对应于指定特性的字段范围修饰符。

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)

如果指定的值不是一个有效的标识符,将引发异常。

适用于

另请参阅