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
TEndpointThe type of CollectionEndpoint to generate code for.
- Inheritance
-
objectBuilderBase<TEndpoint>CollectionBuilderBase<TEndpoint>
- Implements
-
IBuilder<TEndpoint>
- Derived
- Inherited Members
Properties
TypeName
protected abstract string TypeName { get; }
Property Value
TypeNamespace
protected abstract string TypeNamespace { get; }
Property Value
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
implementationCSharpClassThe generated class to add the members to.
interfaceTypeCSharpIdentifierThe 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
keystringendpointTEndpointgeneratorIEndpointGenerator
Returns
GetImplementationType(TEndpoint, INamingStrategy)
protected override CSharpIdentifier GetImplementationType(TEndpoint endpoint, INamingStrategy naming)
Parameters
endpointTEndpointnamingINamingStrategy
Returns
GetInterfaceType(CSharpIdentifier, bool)
protected override CSharpIdentifier GetInterfaceType(CSharpIdentifier implementationType, bool withInterfaces)
Parameters
implementationTypeCSharpIdentifierwithInterfacesbool