InspectorDescriptorGenerator
public sealed class InspectorDescriptorGeneratorTurns [Inspector]-attributed members into a descriptor per type.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
What it writes. One InspectorDescriptor per type that has annotated members, holding the member list, the attribute metadata and the accessors; and a module initializer that registers it. Referencing an assembly is therefore enough for its types to be inspectable.
Why generated rather than reflected. The obvious implementation walks the loaded assemblies looking for the attribute and costs a reflection pass at startup, an AOT hazard, and an inspector whose contents depend on what happened to be loaded. This is the same bet Vixen.Core.Reflection makes; what it adds is the accessor shape.
Why a field gets a ref accessor and a property does not. Vixen.Core.Reflection's accessors pass values as object, and doc 11's inspector asks for "get/set accessors as delegates over ref access … it works for struct members without boxing". A field can have one — static (Foo o) => ref o.Tint — and a property cannot, because there is nothing to take a reference to. So the generator emits the strongest accessor each member admits rather than the weakest one both admit.
Methods (1)
public void Initialize(IncrementalGeneratorInitializationContext context)Called to initialize the generator and register generation steps via callbacks on the