2.6 KiB
2.6 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | ||
|---|---|---|---|---|---|---|
|
2026-04-17T16:37:19.503229+00:00 | zai-org/GLM-5-FP8 | 1 | bf7ed2ed0d95051d |
Documentation: IGenericModuleView & IGenericModuleViewModel
1. Purpose
This module defines two marker interfaces—IGenericModuleView and `IGenericModuleViewModel—that establish a type hierarchy for generic module components within the DTS system. These interfaces follow the Model-View-ViewModel (MVVM) pattern, providing a common base type for views and view models that can be used across generic module implementations. They serve as extension points for polymorphic handling of module-related UI components.
2. Public Interface
IGenericModuleView
- Signature:
public interface IGenericModuleView : IBaseView - Namespace:
DTS.Common.Interface - Inheritance: Extends
IBaseViewfromDTS.Common.Base - Members: None (marker interface)
IGenericModuleViewModel
- Signature:
public interface IGenericModuleViewModel : IBaseViewModel - Namespace:
DTS.Common.Interface - Inheritance: Extends
IBaseViewModelfromDTS.Common.Base - Members: None (marker interface)
3. Invariants
- Both interfaces must always inherit from their respective base interfaces (
IBaseViewandIBaseViewModel) fromDTS.Common.Base. - Any class implementing
IGenericModuleViewmust also implement all members ofIBaseView(members not visible in provided source). - Any class implementing
IGenericModuleViewModelmust also implement all members ofIBaseViewModel(members not visible in provided source). - The interfaces themselves define no additional members beyond their inheritance hierarchy.
4. Dependencies
This module depends on:
DTS.Common.Base— ProvidesIBaseViewandIBaseViewModelparent interfaces.
What depends on this module:
- Unknown from source alone. Consumers would be concrete view and view model implementations within the generic module system.
5. Gotchas
- Empty marker interfaces: Both interfaces define no members of their own. Their value lies entirely in type identification and the inheritance chain. Developers should not expect any contract methods or properties from these interfaces directly.
- Base interface contracts unknown: The actual behavioral contracts are defined in
IBaseViewandIBaseViewModel, which are not included in the provided source. The full obligations of implementers cannot be determined from these files alone.