Skip to content

EN intro

github-actions[bot] edited this page Aug 20, 2026 · 2 revisions

DependencyPropertyGenerator specification

🇺🇸 English | 🇯🇵 日本語

This documentation provides the official specification, domain models, incremental pipeline architecture, code generation design, and performance optimization guidelines for DependencyPropertyGenerator (Kassyi.Generators.DependencyProperty), a Roslyn Incremental Source Generator.

Use this documentation as an architectural reference when you extend features, optimize compilation performance (such as build time, memory footprint, and IDE responsiveness), or refine Roslyn pipeline caching strategies.

Specification index

The following documents explain the system's internal architecture:

  • 01. Architectural principles and FAQ Explains the zero-allocation design philosophy, flat code synthesis, direct token streaming, and frequently asked questions.
  • 02. Foundation and domain Defines the project's purpose, modular design, and target platforms. It also covers the ubiquitous language and structured DTO models.
  • 03. Pipeline and architecture Details the Incremental Generator pipeline topology, internal class interactions, and data flow execution phases.
  • 04. Framework-specific generation mapping specifications Details the property registration API mappings across UI frameworks (WPF, WinUI, Uno, Avalonia, MAUI) and framework auto-detection cascade.
  • 05. Code synthesis and performance optimization Details the zero-allocation code synthesis engine (SourceWriter / ClassScope), performance optimization guidelines (AST traversal, LINQ elimination), and benchmark metrics.
  • 06. Complexity model Analyzes worst-case time and memory complexities. It explains pipeline cache scaling limits and architectural mitigations.
  • 07. Test specification Defines the testing strategy, quality targets, combinatorial matrix parameters (576 cases), test cases, and pass criteria.
  • 08. Diagnostics reference Provides a reference guide detailing the causes and solutions for diagnostic errors (DPG0000 through DPG9999) emitted by the generator.

🇺🇸 English | 🇯🇵 日本語

Clone this wiki locally