Table of Contents

Class CollectionBuilderBase<TEndpoint>

Namespace
TypedRest.CodeGeneration.CSharp.Endpoints
Assembly
TypedRest.CodeGeneration.CSharp.dll

Common base class for IBuilder<TEndpoint>s for CollectionEndpoint and derived types.

public abstract class CollectionBuilderBase<TEndpoint> : BuilderBase<TEndpoint>, IBuilder<TEndpoint>, IBuilder where TEndpoint : CollectionEndpoint

Type Parameters

TEndpoint

The type of CollectionEndpoint to generate code for.

Inheritance
object
BuilderBase<TEndpoint>
CollectionBuilderBase<TEndpoint>
Implements
IBuilder<TEndpoint>
Derived
Inherited Members

Properties

TypeName

protected abstract string TypeName { get; }

Property Value

string

TypeNamespace

protected abstract string TypeNamespace { get; }

Property Value

string

Methods

AddInterfaceAdapters(CSharpClass, CSharpIdentifier)

Adds explicit interface implementations to a generated class for members that it inherits with concrete endpoint types while interfaceType declares them with the corresponding interface types (e.g. an indexer returning IFooEndpoint rather than FooEndpoint).

protected override void AddInterfaceAdapters(CSharpClass implementation, CSharpIdentifier interfaceType)

Parameters

implementation CSharpClass

The generated class to add the members to.

interfaceType CSharpIdentifier

The endpoint interface the generated interface derives from.

GetAdditional(string, TEndpoint, IEndpointGenerator)

protected override (IEnumerable<ICSharpType> types, IEnumerable<CSharpIdentifier> typeArguments) GetAdditional(string key, TEndpoint endpoint, IEndpointGenerator generator)

Parameters

key string
endpoint TEndpoint
generator IEndpointGenerator

Returns

(IEnumerable<ICSharpType> types, IEnumerable<CSharpIdentifier> typeArguments)

GetImplementationType(TEndpoint, INamingStrategy)

protected override CSharpIdentifier GetImplementationType(TEndpoint endpoint, INamingStrategy naming)

Parameters

endpoint TEndpoint
naming INamingStrategy

Returns

CSharpIdentifier

GetInterfaceType(CSharpIdentifier, bool)

protected override CSharpIdentifier GetInterfaceType(CSharpIdentifier implementationType, bool withInterfaces)

Parameters

implementationType CSharpIdentifier
withInterfaces bool

Returns

CSharpIdentifier