NanoByte Code Generation
Public Member Functions | Protected Member Functions | Properties | List of all members
NanoByte.CodeGeneration.CSharpClass Class Reference

Describes a C# class for which code can be generated. More...

Inheritance diagram for NanoByte.CodeGeneration.CSharpClass:
NanoByte.CodeGeneration.CSharpInterface NanoByte.CodeGeneration.CSharpType NanoByte.CodeGeneration.ICSharpType

Public Member Functions

 CSharpClass (CSharpIdentifier identifier)
 Creates a new C# class. More...
 
CSharpConstructor GetConstruction ()
 Returns a constructor for instantiating this class. More...
 
- Public Member Functions inherited from NanoByte.CodeGeneration.CSharpInterface
 CSharpInterface (CSharpIdentifier identifier)
 Creates a new C# interface. More...
 
- Public Member Functions inherited from NanoByte.CodeGeneration.CSharpType
CompilationUnitSyntax ToSyntax ()
 Returns a Roslyn syntax for a file containing the type.
 
override string ToString ()
 Returns the name of the type. More...
 

Protected Member Functions

override ISet< string > GetNamespaces ()
 Returns a list of all namespaces referenced/used in this type.
 
override TypeDeclarationSyntax GetTypeDeclaration ()
 Returns a Roslyn syntax for the type.
 
override IEnumerable< BaseTypeSyntax > GetBaseTypes ()
 Returns a list of Roslyn syntax for references to base types of this type.
 
override IEnumerable< MemberDeclarationSyntax > GetMemberDeclarations ()
 Returns a list of Roslyn syntax for members of this type.
 
- Protected Member Functions inherited from NanoByte.CodeGeneration.CSharpInterface
override MemberDeclarationSyntax GetMemberDeclaration ()
 Returns a Roslyn syntax for the type.
 
override ISet< string > GetNamespaces ()
 Returns a list of all namespaces referenced/used in this type.
 
- Protected Member Functions inherited from NanoByte.CodeGeneration.CSharpType
 CSharpType (CSharpIdentifier identifier)
 Creates a new C# type. More...
 

Properties

CSharpConstructorBaseClass [get, set]
 The base class of this class; null if none. More...
 
- Properties inherited from NanoByte.CodeGeneration.CSharpInterface
List< CSharpIdentifierInterfaces = new List<CSharpIdentifier>() [get]
 A list of interfaces this type implements. More...
 
List< CSharpPropertyProperties = new List<CSharpProperty>() [get]
 A list of properties this type exposes. More...
 
- Properties inherited from NanoByte.CodeGeneration.CSharpType
CSharpIdentifier Identifier [get]
 
string? Summary [get, set]
 
List< CSharpAttributeAttributes = new List<CSharpAttribute>() [get]
 
- Properties inherited from NanoByte.CodeGeneration.ICSharpType
CSharpIdentifier Identifier [get]
 The fully qualified name of the type. More...
 
string? Summary [get, set]
 A summary used for an XML documentation comment. More...
 
List< CSharpAttributeAttributes [get]
 Attributes to apply to the type. More...
 

Detailed Description

Describes a C# class for which code can be generated.

Constructor & Destructor Documentation

◆ CSharpClass()

NanoByte.CodeGeneration.CSharpClass.CSharpClass ( CSharpIdentifier  identifier)
inline

Creates a new C# class.

Parameters
identifierThe fully qualified name of the class.

Member Function Documentation

◆ GetConstruction()

CSharpConstructor NanoByte.CodeGeneration.CSharpClass.GetConstruction ( )
inline

Returns a constructor for instantiating this class.

Property Documentation

◆ BaseClass

CSharpConstructor? NanoByte.CodeGeneration.CSharpClass.BaseClass
getset

The base class of this class; null if none.


The documentation for this class was generated from the following file: