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

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

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

Public Member Functions

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

Properties

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# interface for which code can be generated.

Constructor & Destructor Documentation

◆ CSharpInterface()

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

Creates a new C# interface.

Parameters
identifierThe fully qualified name of the interface.

Member Function Documentation

◆ GetBaseTypes()

virtual IEnumerable<BaseTypeSyntax> NanoByte.CodeGeneration.CSharpInterface.GetBaseTypes ( )
protectedvirtual

Returns a list of Roslyn syntax for references to base types of this type.

Reimplemented in NanoByte.CodeGeneration.CSharpClass.

◆ GetMemberDeclarations()

virtual IEnumerable<MemberDeclarationSyntax> NanoByte.CodeGeneration.CSharpInterface.GetMemberDeclarations ( )
protectedvirtual

Returns a list of Roslyn syntax for members of this type.

Reimplemented in NanoByte.CodeGeneration.CSharpClass.

◆ GetTypeDeclaration()

virtual TypeDeclarationSyntax NanoByte.CodeGeneration.CSharpInterface.GetTypeDeclaration ( )
protectedvirtual

Returns a Roslyn syntax for the type.

Reimplemented in NanoByte.CodeGeneration.CSharpClass.

Property Documentation

◆ Interfaces

List<CSharpIdentifier> NanoByte.CodeGeneration.CSharpInterface.Interfaces = new List<CSharpIdentifier>()
get

A list of interfaces this type implements.

◆ Properties

List<CSharpProperty> NanoByte.CodeGeneration.CSharpInterface.Properties = new List<CSharpProperty>()
get

A list of properties this type exposes.


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