diff --git a/docs/README.md b/docs/README.md index bf90f26..853515e 100644 --- a/docs/README.md +++ b/docs/README.md @@ -51,7 +51,7 @@ Assuming the `deviceMetadata` object loaded above is available, device firmware ```csharp ... using var reader = new StreamReader("ios.yml"); -var portPinMetadata = MetadataDeserializer.Instance.Deserialize(reader); +var portPinMetadata = MetadataDeserializer.Instance.Deserialize>(reader); var generator = new FirmwareGenerator(deviceMetadata, portPinMetadata); var headers = generator.GenerateHeaders(); diff --git a/src/Interface.cs b/src/Interface.cs index e2a75b6..ea01547 100644 --- a/src/Interface.cs +++ b/src/Interface.cs @@ -58,6 +58,10 @@ public class DeviceMetadata /// /// Gets a value indicating whether the metadata describes an application device. /// + /// + /// Metadata declaring no device name describes the core register set. In this case, the + /// generated interface carries the register classes and the address map only. + /// [YamlIgnore] public bool IsApplicationDevice => !string.IsNullOrEmpty(Device); } diff --git a/src/InterfaceGenerator.cs b/src/InterfaceGenerator.cs index ffe21b3..8110ef7 100644 --- a/src/InterfaceGenerator.cs +++ b/src/InterfaceGenerator.cs @@ -7,6 +7,10 @@ namespace Harp.Generators; /// /// Provides automatic generation of reactive device interface implementations. /// +/// +/// Metadata declaring no device name generates no asynchronous device interface, so +/// enumerating the result yields a single file. +/// public sealed class InterfaceGenerator { readonly Device _deviceTemplate = new();