Class RuntimeTrackingTypeDefinition<TOriginal>
Describes the generated type selected by ordered options.
public sealed class RuntimeTrackingTypeDefinition<TOriginal>
Type Parameters
TOriginal
- Inheritance
-
RuntimeTrackingTypeDefinition<TOriginal>
- Inherited Members
- Extension Methods
Properties
Interfaces
Gets the required interfaces.
public IReadOnlyList<Type> Interfaces { get; }
Property Value
Members
Gets the generated member definitions.
public IReadOnlyList<RuntimeTrackingMemberDefinition<TOriginal>> Members { get; }
Property Value
- IReadOnlyList<RuntimeTrackingMemberDefinition<TOriginal>>
Methods
Gets the generated method definitions.
public IReadOnlyList<RuntimeTrackingMethodDefinition<TOriginal>> Methods { get; }
Property Value
- IReadOnlyList<RuntimeTrackingMethodDefinition<TOriginal>>
NewOriginalFactory
Gets or sets the factory for provisional original values.
public Func<TOriginal>? NewOriginalFactory { get; set; }
Property Value
- Func<TOriginal>
OriginalStorage
Gets or sets the original storage emitter.
public IRuntimeOriginalStorageEmitter<TOriginal> OriginalStorage { get; set; }
Property Value
- IRuntimeOriginalStorageEmitter<TOriginal>
RequestedContract
Gets the requested consumer contract.
public Type RequestedContract { get; }
Property Value
TypeEmitters
Gets the type emitters.
public IReadOnlyList<IRuntimeTrackingTypeEmitter<TOriginal>> TypeEmitters { get; }
Property Value
- IReadOnlyList<IRuntimeTrackingTypeEmitter<TOriginal>>
Methods
AddTypeEmitter(IRuntimeTrackingTypeEmitter<TOriginal>)
Adds a type emitter.
public void AddTypeEmitter(IRuntimeTrackingTypeEmitter<TOriginal> emitter)
Parameters
emitterIRuntimeTrackingTypeEmitter<TOriginal>
FindMember(string)
Finds a member by name.
public RuntimeTrackingMemberDefinition<TOriginal>? FindMember(string name)
Parameters
namestring
Returns
- RuntimeTrackingMemberDefinition<TOriginal>
GetOrAddMember(string, Type)
Gets or adds a member definition.
public RuntimeTrackingMemberDefinition<TOriginal> GetOrAddMember(string name, Type valueType)
Parameters
Returns
- RuntimeTrackingMemberDefinition<TOriginal>
RemoveMember(string)
Removes a member by name.
public bool RemoveMember(string name)
Parameters
namestring
Returns
RequireInterface(Type)
Adds a required interface.
public void RequireInterface(Type interfaceType)
Parameters
interfaceTypeType
Validate()
Validates the completed definition.
public void Validate()