Table of Contents

Class CSharpInterface

Namespace
NanoByte.CodeGeneration
Assembly
NanoByte.CodeGeneration.dll

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

public class CSharpInterface : CSharpType, ICSharpType
Inheritance
CSharpInterface
Implements
Derived
Inherited Members
Extension Methods

Constructors

CSharpInterface(CSharpIdentifier)

Creates a new C# interface.

public CSharpInterface(CSharpIdentifier identifier)

Parameters

identifier CSharpIdentifier

The fully qualified name of the interface.

Properties

Interfaces

A list of interfaces this type implements.

public List<CSharpIdentifier> Interfaces { get; }

Property Value

List<CSharpIdentifier>

Properties

A list of properties this type exposes.

public List<CSharpProperty> Properties { get; }

Property Value

List<CSharpProperty>

Methods

GetBaseTypes()

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

protected virtual IEnumerable<BaseTypeSyntax> GetBaseTypes()

Returns

IEnumerable<BaseTypeSyntax>

GetMemberDeclaration()

Returns a Roslyn syntax for the type.

protected override MemberDeclarationSyntax GetMemberDeclaration()

Returns

MemberDeclarationSyntax

GetMemberDeclarations()

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

protected virtual IEnumerable<MemberDeclarationSyntax> GetMemberDeclarations()

Returns

IEnumerable<MemberDeclarationSyntax>

GetNamespaces()

Returns a list of all namespaces referenced/used in this type.

protected override ISet<string> GetNamespaces()

Returns

ISet<string>

GetTypeDeclaration()

Returns a Roslyn syntax for the type.

protected virtual TypeDeclarationSyntax GetTypeDeclaration()

Returns

TypeDeclarationSyntax